diff options
Diffstat (limited to 'include/clang/AST/StmtOpenMP.h')
| -rw-r--r-- | include/clang/AST/StmtOpenMP.h | 580 |
1 files changed, 302 insertions, 278 deletions
diff --git a/include/clang/AST/StmtOpenMP.h b/include/clang/AST/StmtOpenMP.h index 66fb037fc33c..84a35db938b0 100644 --- a/include/clang/AST/StmtOpenMP.h +++ b/include/clang/AST/StmtOpenMP.h @@ -7,7 +7,7 @@ // //===----------------------------------------------------------------------===// /// \file -/// \brief This file defines OpenMP AST classes for executable directives and +/// This file defines OpenMP AST classes for executable directives and /// clauses. /// //===----------------------------------------------------------------------===// @@ -27,28 +27,28 @@ namespace clang { // AST classes for directives. //===----------------------------------------------------------------------===// -/// \brief This is a basic class for representing single OpenMP executable +/// This is a basic class for representing single OpenMP executable /// directive. /// class OMPExecutableDirective : public Stmt { friend class ASTStmtReader; - /// \brief Kind of the directive. + /// Kind of the directive. OpenMPDirectiveKind Kind; - /// \brief Starting location of the directive (directive keyword). + /// Starting location of the directive (directive keyword). SourceLocation StartLoc; - /// \brief Ending location of the directive. + /// Ending location of the directive. SourceLocation EndLoc; - /// \brief Numbers of clauses. + /// Numbers of clauses. const unsigned NumClauses; - /// \brief Number of child expressions/stmts. + /// Number of child expressions/stmts. const unsigned NumChildren; - /// \brief Offset from this to the start of clauses. + /// Offset from this to the start of clauses. /// There are NumClauses pointers to clauses, they are followed by /// NumChildren pointers to child stmts/exprs (if the directive type /// requires an associated stmt, then it has to be the first of them). const unsigned ClausesOffset; - /// \brief Get the clauses storage. + /// Get the clauses storage. MutableArrayRef<OMPClause *> getClauses() { OMPClause **ClauseStorage = reinterpret_cast<OMPClause **>( reinterpret_cast<char *>(this) + ClausesOffset); @@ -56,7 +56,7 @@ class OMPExecutableDirective : public Stmt { } protected: - /// \brief Build instance of directive of class \a K. + /// Build instance of directive of class \a K. /// /// \param SC Statement class. /// \param K Kind of OpenMP directive. @@ -72,13 +72,13 @@ protected: NumChildren(NumChildren), ClausesOffset(llvm::alignTo(sizeof(T), alignof(OMPClause *))) {} - /// \brief Sets the list of variables for this clause. + /// Sets the list of variables for this clause. /// /// \param Clauses The list of clauses for the directive. /// void setClauses(ArrayRef<OMPClause *> Clauses); - /// \brief Set the associated statement for the directive. + /// Set the associated statement for the directive. /// /// /param S Associated statement. /// @@ -88,7 +88,7 @@ protected: } public: - /// \brief Iterates over a filtered subrange of clauses applied to a + /// Iterates over a filtered subrange of clauses applied to a /// directive. /// /// This iterator visits only clauses of type SpecificClause. @@ -164,45 +164,49 @@ public: return Clauses.begin() != Clauses.end(); } - /// \brief Returns starting location of directive kind. + /// Returns starting location of directive kind. SourceLocation getLocStart() const { return StartLoc; } - /// \brief Returns ending location of directive. + /// Returns ending location of directive. SourceLocation getLocEnd() const { return EndLoc; } - /// \brief Set starting location of directive kind. + /// Set starting location of directive kind. /// /// \param Loc New starting location of directive. /// void setLocStart(SourceLocation Loc) { StartLoc = Loc; } - /// \brief Set ending location of directive. + /// Set ending location of directive. /// /// \param Loc New ending location of directive. /// void setLocEnd(SourceLocation Loc) { EndLoc = Loc; } - /// \brief Get number of clauses. + /// Get number of clauses. unsigned getNumClauses() const { return NumClauses; } - /// \brief Returns specified clause. + /// Returns specified clause. /// /// \param i Number of clause. /// OMPClause *getClause(unsigned i) const { return clauses()[i]; } - /// \brief Returns true if directive has associated statement. + /// Returns true if directive has associated statement. bool hasAssociatedStmt() const { return NumChildren > 0; } - /// \brief Returns statement associated with the directive. - Stmt *getAssociatedStmt() const { + /// Returns statement associated with the directive. + const Stmt *getAssociatedStmt() const { assert(hasAssociatedStmt() && "no associated statement."); - return const_cast<Stmt *>(*child_begin()); + return *child_begin(); + } + Stmt *getAssociatedStmt() { + assert(hasAssociatedStmt() && "no associated statement."); + return *child_begin(); } - /// \brief Returns the captured statement associated with the + /// Returns the captured statement associated with the /// component region within the (combined) directive. // // \param RegionKind Component region kind. - CapturedStmt *getCapturedStmt(OpenMPDirectiveKind RegionKind) const { + const CapturedStmt *getCapturedStmt(OpenMPDirectiveKind RegionKind) const { SmallVector<OpenMPDirectiveKind, 4> CaptureRegions; getOpenMPCaptureRegions(CaptureRegions, getDirectiveKind()); assert(std::any_of( @@ -218,6 +222,25 @@ public: llvm_unreachable("Incorrect RegionKind specified for directive."); } + /// Get innermost captured statement for the construct. + CapturedStmt *getInnermostCapturedStmt() { + assert(hasAssociatedStmt() && getAssociatedStmt() && + "Must have associated statement."); + SmallVector<OpenMPDirectiveKind, 4> CaptureRegions; + getOpenMPCaptureRegions(CaptureRegions, getDirectiveKind()); + assert(!CaptureRegions.empty() && + "At least one captured statement must be provided."); + auto *CS = cast<CapturedStmt>(getAssociatedStmt()); + for (unsigned Level = CaptureRegions.size(); Level > 1; --Level) + CS = cast<CapturedStmt>(CS->getCapturedStmt()); + return CS; + } + + const CapturedStmt *getInnermostCapturedStmt() const { + return const_cast<OMPExecutableDirective *>(this) + ->getInnermostCapturedStmt(); + } + OpenMPDirectiveKind getDirectiveKind() const { return Kind; } static bool classof(const Stmt *S) { @@ -229,7 +252,9 @@ public: if (!hasAssociatedStmt()) return child_range(child_iterator(), child_iterator()); Stmt **ChildStorage = reinterpret_cast<Stmt **>(getClauses().end()); - return child_range(ChildStorage, ChildStorage + NumChildren); + /// Do not mark all the special expression/statements as children, except + /// for the associated statement. + return child_range(ChildStorage, ChildStorage + 1); } ArrayRef<OMPClause *> clauses() { return getClauses(); } @@ -239,7 +264,7 @@ public: } }; -/// \brief This represents '#pragma omp parallel' directive. +/// This represents '#pragma omp parallel' directive. /// /// \code /// #pragma omp parallel private(a,b) reduction(+: c,d) @@ -250,10 +275,10 @@ public: /// class OMPParallelDirective : public OMPExecutableDirective { friend class ASTStmtReader; - /// \brief true if the construct has inner cancel directive. + /// true if the construct has inner cancel directive. bool HasCancel; - /// \brief Build directive with the given start and end location. + /// Build directive with the given start and end location. /// /// \param StartLoc Starting location of the directive (directive keyword). /// \param EndLoc Ending Location of the directive. @@ -264,7 +289,7 @@ class OMPParallelDirective : public OMPExecutableDirective { StartLoc, EndLoc, NumClauses, 1), HasCancel(false) {} - /// \brief Build an empty directive. + /// Build an empty directive. /// /// \param NumClauses Number of clauses. /// @@ -274,11 +299,11 @@ class OMPParallelDirective : public OMPExecutableDirective { 1), HasCancel(false) {} - /// \brief Set cancel state. + /// Set cancel state. void setHasCancel(bool Has) { HasCancel = Has; } public: - /// \brief Creates directive with a list of \a Clauses. + /// Creates directive with a list of \a Clauses. /// /// \param C AST context. /// \param StartLoc Starting location of the directive kind. @@ -291,7 +316,7 @@ public: Create(const ASTContext &C, SourceLocation StartLoc, SourceLocation EndLoc, ArrayRef<OMPClause *> Clauses, Stmt *AssociatedStmt, bool HasCancel); - /// \brief Creates an empty directive with the place for \a N clauses. + /// Creates an empty directive with the place for \a N clauses. /// /// \param C AST context. /// \param NumClauses Number of clauses. @@ -299,7 +324,7 @@ public: static OMPParallelDirective *CreateEmpty(const ASTContext &C, unsigned NumClauses, EmptyShell); - /// \brief Return true if current directive has inner cancel directive. + /// Return true if current directive has inner cancel directive. bool hasCancel() const { return HasCancel; } static bool classof(const Stmt *T) { @@ -307,15 +332,15 @@ public: } }; -/// \brief This is a common base class for loop directives ('omp simd', 'omp +/// This is a common base class for loop directives ('omp simd', 'omp /// for', 'omp for simd' etc.). It is responsible for the loop code generation. /// class OMPLoopDirective : public OMPExecutableDirective { friend class ASTStmtReader; - /// \brief Number of collapsed loops as specified by 'collapse' clause. + /// Number of collapsed loops as specified by 'collapse' clause. unsigned CollapsedNum; - /// \brief Offsets to the stored exprs. + /// Offsets to the stored exprs. /// This enumeration contains offsets to all the pointers to children /// expressions stored in OMPLoopDirective. /// The first 9 children are necessary for all the loop directives, @@ -372,21 +397,21 @@ class OMPLoopDirective : public OMPExecutableDirective { CombinedDistributeEnd = 28, }; - /// \brief Get the counters storage. + /// Get the counters storage. MutableArrayRef<Expr *> getCounters() { Expr **Storage = reinterpret_cast<Expr **>( &(*(std::next(child_begin(), getArraysOffset(getDirectiveKind()))))); return MutableArrayRef<Expr *>(Storage, CollapsedNum); } - /// \brief Get the private counters storage. + /// Get the private counters storage. MutableArrayRef<Expr *> getPrivateCounters() { Expr **Storage = reinterpret_cast<Expr **>(&*std::next( child_begin(), getArraysOffset(getDirectiveKind()) + CollapsedNum)); return MutableArrayRef<Expr *>(Storage, CollapsedNum); } - /// \brief Get the updates storage. + /// Get the updates storage. MutableArrayRef<Expr *> getInits() { Expr **Storage = reinterpret_cast<Expr **>( &*std::next(child_begin(), @@ -394,7 +419,7 @@ class OMPLoopDirective : public OMPExecutableDirective { return MutableArrayRef<Expr *>(Storage, CollapsedNum); } - /// \brief Get the updates storage. + /// Get the updates storage. MutableArrayRef<Expr *> getUpdates() { Expr **Storage = reinterpret_cast<Expr **>( &*std::next(child_begin(), @@ -402,7 +427,7 @@ class OMPLoopDirective : public OMPExecutableDirective { return MutableArrayRef<Expr *>(Storage, CollapsedNum); } - /// \brief Get the final counter updates storage. + /// Get the final counter updates storage. MutableArrayRef<Expr *> getFinals() { Expr **Storage = reinterpret_cast<Expr **>( &*std::next(child_begin(), @@ -411,7 +436,7 @@ class OMPLoopDirective : public OMPExecutableDirective { } protected: - /// \brief Build instance of loop directive of class \a Kind. + /// Build instance of loop directive of class \a Kind. /// /// \param SC Statement class. /// \param Kind Kind of OpenMP directive. @@ -431,7 +456,7 @@ protected: NumSpecialChildren), CollapsedNum(CollapsedNum) {} - /// \brief Offset to the start of children expression arrays. + /// Offset to the start of children expression arrays. static unsigned getArraysOffset(OpenMPDirectiveKind Kind) { if (isOpenMPLoopBoundSharingDirective(Kind)) return CombinedDistributeEnd; @@ -441,7 +466,7 @@ protected: return DefaultEnd; } - /// \brief Children number. + /// Children number. static unsigned numLoopChildren(unsigned CollapsedNum, OpenMPDirectiveKind Kind) { return getArraysOffset(Kind) + 5 * CollapsedNum; // Counters, @@ -606,72 +631,72 @@ public: /// Distribute Loop condition used when composing 'omp distribute' /// with 'omp for' in a same construct Expr *Cond; - /// Update of LowerBound for statically sheduled omp loops for + /// Update of LowerBound for statically scheduled omp loops for /// outer loop in combined constructs (e.g. 'distribute parallel for') Expr *NLB; - /// Update of UpperBound for statically sheduled omp loops for + /// Update of UpperBound for statically scheduled omp loops for /// outer loop in combined constructs (e.g. 'distribute parallel for') Expr *NUB; }; - /// \brief The expressions built for the OpenMP loop CodeGen for the + /// The expressions built for the OpenMP loop CodeGen for the /// whole collapsed loop nest. struct HelperExprs { - /// \brief Loop iteration variable. + /// Loop iteration variable. Expr *IterationVarRef; - /// \brief Loop last iteration number. + /// Loop last iteration number. Expr *LastIteration; - /// \brief Loop number of iterations. + /// Loop number of iterations. Expr *NumIterations; - /// \brief Calculation of last iteration. + /// Calculation of last iteration. Expr *CalcLastIteration; - /// \brief Loop pre-condition. + /// Loop pre-condition. Expr *PreCond; - /// \brief Loop condition. + /// Loop condition. Expr *Cond; - /// \brief Loop iteration variable init. + /// Loop iteration variable init. Expr *Init; - /// \brief Loop increment. + /// Loop increment. Expr *Inc; - /// \brief IsLastIteration - local flag variable passed to runtime. + /// IsLastIteration - local flag variable passed to runtime. Expr *IL; - /// \brief LowerBound - local variable passed to runtime. + /// LowerBound - local variable passed to runtime. Expr *LB; - /// \brief UpperBound - local variable passed to runtime. + /// UpperBound - local variable passed to runtime. Expr *UB; - /// \brief Stride - local variable passed to runtime. + /// Stride - local variable passed to runtime. Expr *ST; - /// \brief EnsureUpperBound -- expression UB = min(UB, NumIterations). + /// EnsureUpperBound -- expression UB = min(UB, NumIterations). Expr *EUB; - /// \brief Update of LowerBound for statically sheduled 'omp for' loops. + /// Update of LowerBound for statically scheduled 'omp for' loops. Expr *NLB; - /// \brief Update of UpperBound for statically sheduled 'omp for' loops. + /// Update of UpperBound for statically scheduled 'omp for' loops. Expr *NUB; - /// \brief PreviousLowerBound - local variable passed to runtime in the + /// PreviousLowerBound - local variable passed to runtime in the /// enclosing schedule or null if that does not apply. Expr *PrevLB; - /// \brief PreviousUpperBound - local variable passed to runtime in the + /// PreviousUpperBound - local variable passed to runtime in the /// enclosing schedule or null if that does not apply. Expr *PrevUB; - /// \brief DistInc - increment expression for distribute loop when found + /// DistInc - increment expression for distribute loop when found /// combined with a further loop level (e.g. in 'distribute parallel for') /// expression IV = IV + ST Expr *DistInc; - /// \brief PrevEUB - expression similar to EUB but to be used when loop + /// PrevEUB - expression similar to EUB but to be used when loop /// scheduling uses PrevLB and PrevUB (e.g. in 'distribute parallel for' /// when ensuring that the UB is either the calculated UB by the runtime or /// the end of the assigned distribute chunk) /// expression UB = min (UB, PrevUB) Expr *PrevEUB; - /// \brief Counters Loop counters. + /// Counters Loop counters. SmallVector<Expr *, 4> Counters; - /// \brief PrivateCounters Loop counters. + /// PrivateCounters Loop counters. SmallVector<Expr *, 4> PrivateCounters; - /// \brief Expressions for loop counters inits for CodeGen. + /// Expressions for loop counters inits for CodeGen. SmallVector<Expr *, 4> Inits; - /// \brief Expressions for loop counters update for CodeGen. + /// Expressions for loop counters update for CodeGen. SmallVector<Expr *, 4> Updates; - /// \brief Final loop counter values for GodeGen. + /// Final loop counter values for GodeGen. SmallVector<Expr *, 4> Finals; /// Init statement for all captured expressions. Stmt *PreInits; @@ -679,7 +704,7 @@ public: /// Expressions used when combining OpenMP loop pragmas DistCombinedHelperExprs DistCombinedFields; - /// \brief Check if all the expressions are built (does not check the + /// Check if all the expressions are built (does not check the /// worksharing ones). bool builtAll() { return IterationVarRef != nullptr && LastIteration != nullptr && @@ -687,7 +712,7 @@ public: Cond != nullptr && Init != nullptr && Inc != nullptr; } - /// \brief Initialize all the fields to null. + /// Initialize all the fields to null. /// \param Size Number of elements in the counters/finals/updates arrays. void clear(unsigned Size) { IterationVarRef = nullptr; @@ -732,7 +757,7 @@ public: } }; - /// \brief Get number of collapsed loops. + /// Get number of collapsed loops. unsigned getCollapsedNumber() const { return CollapsedNum; } Expr *getIterationVariable() const { @@ -899,9 +924,8 @@ public: } const Stmt *getBody() const { // This relies on the loop form is already checked by Sema. - const Stmt *Body = getAssociatedStmt()->IgnoreContainers(true); - while(const auto *CS = dyn_cast<CapturedStmt>(Body)) - Body = CS->getCapturedStmt(); + const Stmt *Body = + getInnermostCapturedStmt()->getCapturedStmt()->IgnoreContainers(); Body = cast<ForStmt>(Body)->getBody(); for (unsigned Cnt = 1; Cnt < CollapsedNum; ++Cnt) { Body = Body->IgnoreContainers(); @@ -969,7 +993,7 @@ public: } }; -/// \brief This represents '#pragma omp simd' directive. +/// This represents '#pragma omp simd' directive. /// /// \code /// #pragma omp simd private(a,b) linear(i,j:s) reduction(+:c,d) @@ -980,7 +1004,7 @@ public: /// class OMPSimdDirective : public OMPLoopDirective { friend class ASTStmtReader; - /// \brief Build directive with the given start and end location. + /// Build directive with the given start and end location. /// /// \param StartLoc Starting location of the directive kind. /// \param EndLoc Ending location of the directive. @@ -992,7 +1016,7 @@ class OMPSimdDirective : public OMPLoopDirective { : OMPLoopDirective(this, OMPSimdDirectiveClass, OMPD_simd, StartLoc, EndLoc, CollapsedNum, NumClauses) {} - /// \brief Build an empty directive. + /// Build an empty directive. /// /// \param CollapsedNum Number of collapsed nested loops. /// \param NumClauses Number of clauses. @@ -1003,7 +1027,7 @@ class OMPSimdDirective : public OMPLoopDirective { NumClauses) {} public: - /// \brief Creates directive with a list of \a Clauses. + /// Creates directive with a list of \a Clauses. /// /// \param C AST context. /// \param StartLoc Starting location of the directive kind. @@ -1019,7 +1043,7 @@ public: Stmt *AssociatedStmt, const HelperExprs &Exprs); - /// \brief Creates an empty directive with the place + /// Creates an empty directive with the place /// for \a NumClauses clauses. /// /// \param C AST context. @@ -1034,7 +1058,7 @@ public: } }; -/// \brief This represents '#pragma omp for' directive. +/// This represents '#pragma omp for' directive. /// /// \code /// #pragma omp for private(a,b) reduction(+:c,d) @@ -1046,10 +1070,10 @@ public: class OMPForDirective : public OMPLoopDirective { friend class ASTStmtReader; - /// \brief true if current directive has inner cancel directive. + /// true if current directive has inner cancel directive. bool HasCancel; - /// \brief Build directive with the given start and end location. + /// Build directive with the given start and end location. /// /// \param StartLoc Starting location of the directive kind. /// \param EndLoc Ending location of the directive. @@ -1062,7 +1086,7 @@ class OMPForDirective : public OMPLoopDirective { CollapsedNum, NumClauses), HasCancel(false) {} - /// \brief Build an empty directive. + /// Build an empty directive. /// /// \param CollapsedNum Number of collapsed nested loops. /// \param NumClauses Number of clauses. @@ -1072,11 +1096,11 @@ class OMPForDirective : public OMPLoopDirective { SourceLocation(), CollapsedNum, NumClauses), HasCancel(false) {} - /// \brief Set cancel state. + /// Set cancel state. void setHasCancel(bool Has) { HasCancel = Has; } public: - /// \brief Creates directive with a list of \a Clauses. + /// Creates directive with a list of \a Clauses. /// /// \param C AST context. /// \param StartLoc Starting location of the directive kind. @@ -1093,7 +1117,7 @@ public: Stmt *AssociatedStmt, const HelperExprs &Exprs, bool HasCancel); - /// \brief Creates an empty directive with the place + /// Creates an empty directive with the place /// for \a NumClauses clauses. /// /// \param C AST context. @@ -1103,7 +1127,7 @@ public: static OMPForDirective *CreateEmpty(const ASTContext &C, unsigned NumClauses, unsigned CollapsedNum, EmptyShell); - /// \brief Return true if current directive has inner cancel directive. + /// Return true if current directive has inner cancel directive. bool hasCancel() const { return HasCancel; } static bool classof(const Stmt *T) { @@ -1111,7 +1135,7 @@ public: } }; -/// \brief This represents '#pragma omp for simd' directive. +/// This represents '#pragma omp for simd' directive. /// /// \code /// #pragma omp for simd private(a,b) linear(i,j:s) reduction(+:c,d) @@ -1122,7 +1146,7 @@ public: /// class OMPForSimdDirective : public OMPLoopDirective { friend class ASTStmtReader; - /// \brief Build directive with the given start and end location. + /// Build directive with the given start and end location. /// /// \param StartLoc Starting location of the directive kind. /// \param EndLoc Ending location of the directive. @@ -1134,7 +1158,7 @@ class OMPForSimdDirective : public OMPLoopDirective { : OMPLoopDirective(this, OMPForSimdDirectiveClass, OMPD_for_simd, StartLoc, EndLoc, CollapsedNum, NumClauses) {} - /// \brief Build an empty directive. + /// Build an empty directive. /// /// \param CollapsedNum Number of collapsed nested loops. /// \param NumClauses Number of clauses. @@ -1145,7 +1169,7 @@ class OMPForSimdDirective : public OMPLoopDirective { NumClauses) {} public: - /// \brief Creates directive with a list of \a Clauses. + /// Creates directive with a list of \a Clauses. /// /// \param C AST context. /// \param StartLoc Starting location of the directive kind. @@ -1160,7 +1184,7 @@ public: unsigned CollapsedNum, ArrayRef<OMPClause *> Clauses, Stmt *AssociatedStmt, const HelperExprs &Exprs); - /// \brief Creates an empty directive with the place + /// Creates an empty directive with the place /// for \a NumClauses clauses. /// /// \param C AST context. @@ -1176,7 +1200,7 @@ public: } }; -/// \brief This represents '#pragma omp sections' directive. +/// This represents '#pragma omp sections' directive. /// /// \code /// #pragma omp sections private(a,b) reduction(+:c,d) @@ -1188,10 +1212,10 @@ public: class OMPSectionsDirective : public OMPExecutableDirective { friend class ASTStmtReader; - /// \brief true if current directive has inner cancel directive. + /// true if current directive has inner cancel directive. bool HasCancel; - /// \brief Build directive with the given start and end location. + /// Build directive with the given start and end location. /// /// \param StartLoc Starting location of the directive kind. /// \param EndLoc Ending location of the directive. @@ -1203,7 +1227,7 @@ class OMPSectionsDirective : public OMPExecutableDirective { StartLoc, EndLoc, NumClauses, 1), HasCancel(false) {} - /// \brief Build an empty directive. + /// Build an empty directive. /// /// \param NumClauses Number of clauses. /// @@ -1213,11 +1237,11 @@ class OMPSectionsDirective : public OMPExecutableDirective { 1), HasCancel(false) {} - /// \brief Set cancel state. + /// Set cancel state. void setHasCancel(bool Has) { HasCancel = Has; } public: - /// \brief Creates directive with a list of \a Clauses. + /// Creates directive with a list of \a Clauses. /// /// \param C AST context. /// \param StartLoc Starting location of the directive kind. @@ -1230,7 +1254,7 @@ public: Create(const ASTContext &C, SourceLocation StartLoc, SourceLocation EndLoc, ArrayRef<OMPClause *> Clauses, Stmt *AssociatedStmt, bool HasCancel); - /// \brief Creates an empty directive with the place for \a NumClauses + /// Creates an empty directive with the place for \a NumClauses /// clauses. /// /// \param C AST context. @@ -1239,7 +1263,7 @@ public: static OMPSectionsDirective *CreateEmpty(const ASTContext &C, unsigned NumClauses, EmptyShell); - /// \brief Return true if current directive has inner cancel directive. + /// Return true if current directive has inner cancel directive. bool hasCancel() const { return HasCancel; } static bool classof(const Stmt *T) { @@ -1247,7 +1271,7 @@ public: } }; -/// \brief This represents '#pragma omp section' directive. +/// This represents '#pragma omp section' directive. /// /// \code /// #pragma omp section @@ -1256,10 +1280,10 @@ public: class OMPSectionDirective : public OMPExecutableDirective { friend class ASTStmtReader; - /// \brief true if current directive has inner cancel directive. + /// true if current directive has inner cancel directive. bool HasCancel; - /// \brief Build directive with the given start and end location. + /// Build directive with the given start and end location. /// /// \param StartLoc Starting location of the directive kind. /// \param EndLoc Ending location of the directive. @@ -1269,7 +1293,7 @@ class OMPSectionDirective : public OMPExecutableDirective { StartLoc, EndLoc, 0, 1), HasCancel(false) {} - /// \brief Build an empty directive. + /// Build an empty directive. /// explicit OMPSectionDirective() : OMPExecutableDirective(this, OMPSectionDirectiveClass, OMPD_section, @@ -1277,7 +1301,7 @@ class OMPSectionDirective : public OMPExecutableDirective { HasCancel(false) {} public: - /// \brief Creates directive. + /// Creates directive. /// /// \param C AST context. /// \param StartLoc Starting location of the directive kind. @@ -1290,16 +1314,16 @@ public: SourceLocation EndLoc, Stmt *AssociatedStmt, bool HasCancel); - /// \brief Creates an empty directive. + /// Creates an empty directive. /// /// \param C AST context. /// static OMPSectionDirective *CreateEmpty(const ASTContext &C, EmptyShell); - /// \brief Set cancel state. + /// Set cancel state. void setHasCancel(bool Has) { HasCancel = Has; } - /// \brief Return true if current directive has inner cancel directive. + /// Return true if current directive has inner cancel directive. bool hasCancel() const { return HasCancel; } static bool classof(const Stmt *T) { @@ -1307,7 +1331,7 @@ public: } }; -/// \brief This represents '#pragma omp single' directive. +/// This represents '#pragma omp single' directive. /// /// \code /// #pragma omp single private(a,b) copyprivate(c,d) @@ -1317,7 +1341,7 @@ public: /// class OMPSingleDirective : public OMPExecutableDirective { friend class ASTStmtReader; - /// \brief Build directive with the given start and end location. + /// Build directive with the given start and end location. /// /// \param StartLoc Starting location of the directive kind. /// \param EndLoc Ending location of the directive. @@ -1328,7 +1352,7 @@ class OMPSingleDirective : public OMPExecutableDirective { : OMPExecutableDirective(this, OMPSingleDirectiveClass, OMPD_single, StartLoc, EndLoc, NumClauses, 1) {} - /// \brief Build an empty directive. + /// Build an empty directive. /// /// \param NumClauses Number of clauses. /// @@ -1338,7 +1362,7 @@ class OMPSingleDirective : public OMPExecutableDirective { 1) {} public: - /// \brief Creates directive with a list of \a Clauses. + /// Creates directive with a list of \a Clauses. /// /// \param C AST context. /// \param StartLoc Starting location of the directive kind. @@ -1350,7 +1374,7 @@ public: Create(const ASTContext &C, SourceLocation StartLoc, SourceLocation EndLoc, ArrayRef<OMPClause *> Clauses, Stmt *AssociatedStmt); - /// \brief Creates an empty directive with the place for \a NumClauses + /// Creates an empty directive with the place for \a NumClauses /// clauses. /// /// \param C AST context. @@ -1364,7 +1388,7 @@ public: } }; -/// \brief This represents '#pragma omp master' directive. +/// This represents '#pragma omp master' directive. /// /// \code /// #pragma omp master @@ -1372,7 +1396,7 @@ public: /// class OMPMasterDirective : public OMPExecutableDirective { friend class ASTStmtReader; - /// \brief Build directive with the given start and end location. + /// Build directive with the given start and end location. /// /// \param StartLoc Starting location of the directive kind. /// \param EndLoc Ending location of the directive. @@ -1381,14 +1405,14 @@ class OMPMasterDirective : public OMPExecutableDirective { : OMPExecutableDirective(this, OMPMasterDirectiveClass, OMPD_master, StartLoc, EndLoc, 0, 1) {} - /// \brief Build an empty directive. + /// Build an empty directive. /// explicit OMPMasterDirective() : OMPExecutableDirective(this, OMPMasterDirectiveClass, OMPD_master, SourceLocation(), SourceLocation(), 0, 1) {} public: - /// \brief Creates directive. + /// Creates directive. /// /// \param C AST context. /// \param StartLoc Starting location of the directive kind. @@ -1400,7 +1424,7 @@ public: SourceLocation EndLoc, Stmt *AssociatedStmt); - /// \brief Creates an empty directive. + /// Creates an empty directive. /// /// \param C AST context. /// @@ -1411,7 +1435,7 @@ public: } }; -/// \brief This represents '#pragma omp critical' directive. +/// This represents '#pragma omp critical' directive. /// /// \code /// #pragma omp critical @@ -1419,9 +1443,9 @@ public: /// class OMPCriticalDirective : public OMPExecutableDirective { friend class ASTStmtReader; - /// \brief Name of the directive. + /// Name of the directive. DeclarationNameInfo DirName; - /// \brief Build directive with the given start and end location. + /// Build directive with the given start and end location. /// /// \param Name Name of the directive. /// \param StartLoc Starting location of the directive kind. @@ -1434,7 +1458,7 @@ class OMPCriticalDirective : public OMPExecutableDirective { StartLoc, EndLoc, NumClauses, 1), DirName(Name) {} - /// \brief Build an empty directive. + /// Build an empty directive. /// /// \param NumClauses Number of clauses. /// @@ -1444,14 +1468,14 @@ class OMPCriticalDirective : public OMPExecutableDirective { 1), DirName() {} - /// \brief Set name of the directive. + /// Set name of the directive. /// /// \param Name Name of the directive. /// void setDirectiveName(const DeclarationNameInfo &Name) { DirName = Name; } public: - /// \brief Creates directive. + /// Creates directive. /// /// \param C AST context. /// \param Name Name of the directive. @@ -1465,7 +1489,7 @@ public: SourceLocation StartLoc, SourceLocation EndLoc, ArrayRef<OMPClause *> Clauses, Stmt *AssociatedStmt); - /// \brief Creates an empty directive. + /// Creates an empty directive. /// /// \param C AST context. /// \param NumClauses Number of clauses. @@ -1473,7 +1497,7 @@ public: static OMPCriticalDirective *CreateEmpty(const ASTContext &C, unsigned NumClauses, EmptyShell); - /// \brief Return name of the directive. + /// Return name of the directive. /// DeclarationNameInfo getDirectiveName() const { return DirName; } @@ -1482,7 +1506,7 @@ public: } }; -/// \brief This represents '#pragma omp parallel for' directive. +/// This represents '#pragma omp parallel for' directive. /// /// \code /// #pragma omp parallel for private(a,b) reduction(+:c,d) @@ -1494,10 +1518,10 @@ public: class OMPParallelForDirective : public OMPLoopDirective { friend class ASTStmtReader; - /// \brief true if current region has inner cancel directive. + /// true if current region has inner cancel directive. bool HasCancel; - /// \brief Build directive with the given start and end location. + /// Build directive with the given start and end location. /// /// \param StartLoc Starting location of the directive kind. /// \param EndLoc Ending location of the directive. @@ -1510,7 +1534,7 @@ class OMPParallelForDirective : public OMPLoopDirective { StartLoc, EndLoc, CollapsedNum, NumClauses), HasCancel(false) {} - /// \brief Build an empty directive. + /// Build an empty directive. /// /// \param CollapsedNum Number of collapsed nested loops. /// \param NumClauses Number of clauses. @@ -1521,11 +1545,11 @@ class OMPParallelForDirective : public OMPLoopDirective { NumClauses), HasCancel(false) {} - /// \brief Set cancel state. + /// Set cancel state. void setHasCancel(bool Has) { HasCancel = Has; } public: - /// \brief Creates directive with a list of \a Clauses. + /// Creates directive with a list of \a Clauses. /// /// \param C AST context. /// \param StartLoc Starting location of the directive kind. @@ -1541,7 +1565,7 @@ public: unsigned CollapsedNum, ArrayRef<OMPClause *> Clauses, Stmt *AssociatedStmt, const HelperExprs &Exprs, bool HasCancel); - /// \brief Creates an empty directive with the place + /// Creates an empty directive with the place /// for \a NumClauses clauses. /// /// \param C AST context. @@ -1553,7 +1577,7 @@ public: unsigned CollapsedNum, EmptyShell); - /// \brief Return true if current directive has inner cancel directive. + /// Return true if current directive has inner cancel directive. bool hasCancel() const { return HasCancel; } static bool classof(const Stmt *T) { @@ -1561,7 +1585,7 @@ public: } }; -/// \brief This represents '#pragma omp parallel for simd' directive. +/// This represents '#pragma omp parallel for simd' directive. /// /// \code /// #pragma omp parallel for simd private(a,b) linear(i,j:s) reduction(+:c,d) @@ -1573,7 +1597,7 @@ public: /// class OMPParallelForSimdDirective : public OMPLoopDirective { friend class ASTStmtReader; - /// \brief Build directive with the given start and end location. + /// Build directive with the given start and end location. /// /// \param StartLoc Starting location of the directive kind. /// \param EndLoc Ending location of the directive. @@ -1586,7 +1610,7 @@ class OMPParallelForSimdDirective : public OMPLoopDirective { OMPD_parallel_for_simd, StartLoc, EndLoc, CollapsedNum, NumClauses) {} - /// \brief Build an empty directive. + /// Build an empty directive. /// /// \param CollapsedNum Number of collapsed nested loops. /// \param NumClauses Number of clauses. @@ -1598,7 +1622,7 @@ class OMPParallelForSimdDirective : public OMPLoopDirective { SourceLocation(), CollapsedNum, NumClauses) {} public: - /// \brief Creates directive with a list of \a Clauses. + /// Creates directive with a list of \a Clauses. /// /// \param C AST context. /// \param StartLoc Starting location of the directive kind. @@ -1613,7 +1637,7 @@ public: unsigned CollapsedNum, ArrayRef<OMPClause *> Clauses, Stmt *AssociatedStmt, const HelperExprs &Exprs); - /// \brief Creates an empty directive with the place + /// Creates an empty directive with the place /// for \a NumClauses clauses. /// /// \param C AST context. @@ -1630,7 +1654,7 @@ public: } }; -/// \brief This represents '#pragma omp parallel sections' directive. +/// This represents '#pragma omp parallel sections' directive. /// /// \code /// #pragma omp parallel sections private(a,b) reduction(+:c,d) @@ -1642,10 +1666,10 @@ public: class OMPParallelSectionsDirective : public OMPExecutableDirective { friend class ASTStmtReader; - /// \brief true if current directive has inner cancel directive. + /// true if current directive has inner cancel directive. bool HasCancel; - /// \brief Build directive with the given start and end location. + /// Build directive with the given start and end location. /// /// \param StartLoc Starting location of the directive kind. /// \param EndLoc Ending location of the directive. @@ -1658,7 +1682,7 @@ class OMPParallelSectionsDirective : public OMPExecutableDirective { NumClauses, 1), HasCancel(false) {} - /// \brief Build an empty directive. + /// Build an empty directive. /// /// \param NumClauses Number of clauses. /// @@ -1668,11 +1692,11 @@ class OMPParallelSectionsDirective : public OMPExecutableDirective { SourceLocation(), NumClauses, 1), HasCancel(false) {} - /// \brief Set cancel state. + /// Set cancel state. void setHasCancel(bool Has) { HasCancel = Has; } public: - /// \brief Creates directive with a list of \a Clauses. + /// Creates directive with a list of \a Clauses. /// /// \param C AST context. /// \param StartLoc Starting location of the directive kind. @@ -1685,7 +1709,7 @@ public: Create(const ASTContext &C, SourceLocation StartLoc, SourceLocation EndLoc, ArrayRef<OMPClause *> Clauses, Stmt *AssociatedStmt, bool HasCancel); - /// \brief Creates an empty directive with the place for \a NumClauses + /// Creates an empty directive with the place for \a NumClauses /// clauses. /// /// \param C AST context. @@ -1694,7 +1718,7 @@ public: static OMPParallelSectionsDirective * CreateEmpty(const ASTContext &C, unsigned NumClauses, EmptyShell); - /// \brief Return true if current directive has inner cancel directive. + /// Return true if current directive has inner cancel directive. bool hasCancel() const { return HasCancel; } static bool classof(const Stmt *T) { @@ -1702,7 +1726,7 @@ public: } }; -/// \brief This represents '#pragma omp task' directive. +/// This represents '#pragma omp task' directive. /// /// \code /// #pragma omp task private(a,b) final(d) @@ -1712,10 +1736,10 @@ public: /// class OMPTaskDirective : public OMPExecutableDirective { friend class ASTStmtReader; - /// \brief true if this directive has inner cancel directive. + /// true if this directive has inner cancel directive. bool HasCancel; - /// \brief Build directive with the given start and end location. + /// Build directive with the given start and end location. /// /// \param StartLoc Starting location of the directive kind. /// \param EndLoc Ending location of the directive. @@ -1727,7 +1751,7 @@ class OMPTaskDirective : public OMPExecutableDirective { EndLoc, NumClauses, 1), HasCancel(false) {} - /// \brief Build an empty directive. + /// Build an empty directive. /// /// \param NumClauses Number of clauses. /// @@ -1737,11 +1761,11 @@ class OMPTaskDirective : public OMPExecutableDirective { 1), HasCancel(false) {} - /// \brief Set cancel state. + /// Set cancel state. void setHasCancel(bool Has) { HasCancel = Has; } public: - /// \brief Creates directive with a list of \a Clauses. + /// Creates directive with a list of \a Clauses. /// /// \param C AST context. /// \param StartLoc Starting location of the directive kind. @@ -1755,7 +1779,7 @@ public: ArrayRef<OMPClause *> Clauses, Stmt *AssociatedStmt, bool HasCancel); - /// \brief Creates an empty directive with the place for \a NumClauses + /// Creates an empty directive with the place for \a NumClauses /// clauses. /// /// \param C AST context. @@ -1764,7 +1788,7 @@ public: static OMPTaskDirective *CreateEmpty(const ASTContext &C, unsigned NumClauses, EmptyShell); - /// \brief Return true if current directive has inner cancel directive. + /// Return true if current directive has inner cancel directive. bool hasCancel() const { return HasCancel; } static bool classof(const Stmt *T) { @@ -1772,7 +1796,7 @@ public: } }; -/// \brief This represents '#pragma omp taskyield' directive. +/// This represents '#pragma omp taskyield' directive. /// /// \code /// #pragma omp taskyield @@ -1780,7 +1804,7 @@ public: /// class OMPTaskyieldDirective : public OMPExecutableDirective { friend class ASTStmtReader; - /// \brief Build directive with the given start and end location. + /// Build directive with the given start and end location. /// /// \param StartLoc Starting location of the directive kind. /// \param EndLoc Ending location of the directive. @@ -1789,14 +1813,14 @@ class OMPTaskyieldDirective : public OMPExecutableDirective { : OMPExecutableDirective(this, OMPTaskyieldDirectiveClass, OMPD_taskyield, StartLoc, EndLoc, 0, 0) {} - /// \brief Build an empty directive. + /// Build an empty directive. /// explicit OMPTaskyieldDirective() : OMPExecutableDirective(this, OMPTaskyieldDirectiveClass, OMPD_taskyield, SourceLocation(), SourceLocation(), 0, 0) {} public: - /// \brief Creates directive. + /// Creates directive. /// /// \param C AST context. /// \param StartLoc Starting location of the directive kind. @@ -1805,7 +1829,7 @@ public: static OMPTaskyieldDirective * Create(const ASTContext &C, SourceLocation StartLoc, SourceLocation EndLoc); - /// \brief Creates an empty directive. + /// Creates an empty directive. /// /// \param C AST context. /// @@ -1816,7 +1840,7 @@ public: } }; -/// \brief This represents '#pragma omp barrier' directive. +/// This represents '#pragma omp barrier' directive. /// /// \code /// #pragma omp barrier @@ -1824,7 +1848,7 @@ public: /// class OMPBarrierDirective : public OMPExecutableDirective { friend class ASTStmtReader; - /// \brief Build directive with the given start and end location. + /// Build directive with the given start and end location. /// /// \param StartLoc Starting location of the directive kind. /// \param EndLoc Ending location of the directive. @@ -1833,14 +1857,14 @@ class OMPBarrierDirective : public OMPExecutableDirective { : OMPExecutableDirective(this, OMPBarrierDirectiveClass, OMPD_barrier, StartLoc, EndLoc, 0, 0) {} - /// \brief Build an empty directive. + /// Build an empty directive. /// explicit OMPBarrierDirective() : OMPExecutableDirective(this, OMPBarrierDirectiveClass, OMPD_barrier, SourceLocation(), SourceLocation(), 0, 0) {} public: - /// \brief Creates directive. + /// Creates directive. /// /// \param C AST context. /// \param StartLoc Starting location of the directive kind. @@ -1849,7 +1873,7 @@ public: static OMPBarrierDirective * Create(const ASTContext &C, SourceLocation StartLoc, SourceLocation EndLoc); - /// \brief Creates an empty directive. + /// Creates an empty directive. /// /// \param C AST context. /// @@ -1860,7 +1884,7 @@ public: } }; -/// \brief This represents '#pragma omp taskwait' directive. +/// This represents '#pragma omp taskwait' directive. /// /// \code /// #pragma omp taskwait @@ -1868,7 +1892,7 @@ public: /// class OMPTaskwaitDirective : public OMPExecutableDirective { friend class ASTStmtReader; - /// \brief Build directive with the given start and end location. + /// Build directive with the given start and end location. /// /// \param StartLoc Starting location of the directive kind. /// \param EndLoc Ending location of the directive. @@ -1877,14 +1901,14 @@ class OMPTaskwaitDirective : public OMPExecutableDirective { : OMPExecutableDirective(this, OMPTaskwaitDirectiveClass, OMPD_taskwait, StartLoc, EndLoc, 0, 0) {} - /// \brief Build an empty directive. + /// Build an empty directive. /// explicit OMPTaskwaitDirective() : OMPExecutableDirective(this, OMPTaskwaitDirectiveClass, OMPD_taskwait, SourceLocation(), SourceLocation(), 0, 0) {} public: - /// \brief Creates directive. + /// Creates directive. /// /// \param C AST context. /// \param StartLoc Starting location of the directive kind. @@ -1893,7 +1917,7 @@ public: static OMPTaskwaitDirective * Create(const ASTContext &C, SourceLocation StartLoc, SourceLocation EndLoc); - /// \brief Creates an empty directive. + /// Creates an empty directive. /// /// \param C AST context. /// @@ -1973,7 +1997,7 @@ public: } }; -/// \brief This represents '#pragma omp flush' directive. +/// This represents '#pragma omp flush' directive. /// /// \code /// #pragma omp flush(a,b) @@ -1985,7 +2009,7 @@ public: /// FlushClause. class OMPFlushDirective : public OMPExecutableDirective { friend class ASTStmtReader; - /// \brief Build directive with the given start and end location. + /// Build directive with the given start and end location. /// /// \param StartLoc Starting location of the directive kind. /// \param EndLoc Ending location of the directive. @@ -1996,7 +2020,7 @@ class OMPFlushDirective : public OMPExecutableDirective { : OMPExecutableDirective(this, OMPFlushDirectiveClass, OMPD_flush, StartLoc, EndLoc, NumClauses, 0) {} - /// \brief Build an empty directive. + /// Build an empty directive. /// /// \param NumClauses Number of clauses. /// @@ -2006,7 +2030,7 @@ class OMPFlushDirective : public OMPExecutableDirective { 0) {} public: - /// \brief Creates directive with a list of \a Clauses. + /// Creates directive with a list of \a Clauses. /// /// \param C AST context. /// \param StartLoc Starting location of the directive kind. @@ -2018,7 +2042,7 @@ public: SourceLocation EndLoc, ArrayRef<OMPClause *> Clauses); - /// \brief Creates an empty directive with the place for \a NumClauses + /// Creates an empty directive with the place for \a NumClauses /// clauses. /// /// \param C AST context. @@ -2032,7 +2056,7 @@ public: } }; -/// \brief This represents '#pragma omp ordered' directive. +/// This represents '#pragma omp ordered' directive. /// /// \code /// #pragma omp ordered @@ -2040,7 +2064,7 @@ public: /// class OMPOrderedDirective : public OMPExecutableDirective { friend class ASTStmtReader; - /// \brief Build directive with the given start and end location. + /// Build directive with the given start and end location. /// /// \param StartLoc Starting location of the directive kind. /// \param EndLoc Ending location of the directive. @@ -2051,7 +2075,7 @@ class OMPOrderedDirective : public OMPExecutableDirective { : OMPExecutableDirective(this, OMPOrderedDirectiveClass, OMPD_ordered, StartLoc, EndLoc, NumClauses, 1) {} - /// \brief Build an empty directive. + /// Build an empty directive. /// /// \param NumClauses Number of clauses. /// @@ -2061,7 +2085,7 @@ class OMPOrderedDirective : public OMPExecutableDirective { 1) {} public: - /// \brief Creates directive. + /// Creates directive. /// /// \param C AST context. /// \param StartLoc Starting location of the directive kind. @@ -2073,7 +2097,7 @@ public: Create(const ASTContext &C, SourceLocation StartLoc, SourceLocation EndLoc, ArrayRef<OMPClause *> Clauses, Stmt *AssociatedStmt); - /// \brief Creates an empty directive. + /// Creates an empty directive. /// /// \param C AST context. /// \param NumClauses Number of clauses. @@ -2086,7 +2110,7 @@ public: } }; -/// \brief This represents '#pragma omp atomic' directive. +/// This represents '#pragma omp atomic' directive. /// /// \code /// #pragma omp atomic capture @@ -2095,7 +2119,7 @@ public: /// class OMPAtomicDirective : public OMPExecutableDirective { friend class ASTStmtReader; - /// \brief Used for 'atomic update' or 'atomic capture' constructs. They may + /// Used for 'atomic update' or 'atomic capture' constructs. They may /// have atomic expressions of forms /// \code /// x = x binop expr; @@ -2105,7 +2129,7 @@ class OMPAtomicDirective : public OMPExecutableDirective { /// second. Required for correct codegen of non-associative operations (like /// << or >>). bool IsXLHSInRHSPart; - /// \brief Used for 'atomic update' or 'atomic capture' constructs. They may + /// Used for 'atomic update' or 'atomic capture' constructs. They may /// have atomic expressions of forms /// \code /// v = x; <update x>; @@ -2115,7 +2139,7 @@ class OMPAtomicDirective : public OMPExecutableDirective { /// otherwise. bool IsPostfixUpdate; - /// \brief Build directive with the given start and end location. + /// Build directive with the given start and end location. /// /// \param StartLoc Starting location of the directive kind. /// \param EndLoc Ending location of the directive. @@ -2127,7 +2151,7 @@ class OMPAtomicDirective : public OMPExecutableDirective { StartLoc, EndLoc, NumClauses, 5), IsXLHSInRHSPart(false), IsPostfixUpdate(false) {} - /// \brief Build an empty directive. + /// Build an empty directive. /// /// \param NumClauses Number of clauses. /// @@ -2137,19 +2161,19 @@ class OMPAtomicDirective : public OMPExecutableDirective { 5), IsXLHSInRHSPart(false), IsPostfixUpdate(false) {} - /// \brief Set 'x' part of the associated expression/statement. + /// Set 'x' part of the associated expression/statement. void setX(Expr *X) { *std::next(child_begin()) = X; } - /// \brief Set helper expression of the form + /// Set helper expression of the form /// 'OpaqueValueExpr(x) binop OpaqueValueExpr(expr)' or /// 'OpaqueValueExpr(expr) binop OpaqueValueExpr(x)'. void setUpdateExpr(Expr *UE) { *std::next(child_begin(), 2) = UE; } - /// \brief Set 'v' part of the associated expression/statement. + /// Set 'v' part of the associated expression/statement. void setV(Expr *V) { *std::next(child_begin(), 3) = V; } - /// \brief Set 'expr' part of the associated expression/statement. + /// Set 'expr' part of the associated expression/statement. void setExpr(Expr *E) { *std::next(child_begin(), 4) = E; } public: - /// \brief Creates directive with a list of \a Clauses and 'x', 'v' and 'expr' + /// Creates directive with a list of \a Clauses and 'x', 'v' and 'expr' /// parts of the atomic construct (see Section 2.12.6, atomic Construct, for /// detailed description of 'x', 'v' and 'expr'). /// @@ -2173,7 +2197,7 @@ public: ArrayRef<OMPClause *> Clauses, Stmt *AssociatedStmt, Expr *X, Expr *V, Expr *E, Expr *UE, bool IsXLHSInRHSPart, bool IsPostfixUpdate); - /// \brief Creates an empty directive with the place for \a NumClauses + /// Creates an empty directive with the place for \a NumClauses /// clauses. /// /// \param C AST context. @@ -2182,12 +2206,12 @@ public: static OMPAtomicDirective *CreateEmpty(const ASTContext &C, unsigned NumClauses, EmptyShell); - /// \brief Get 'x' part of the associated expression/statement. + /// Get 'x' part of the associated expression/statement. Expr *getX() { return cast_or_null<Expr>(*std::next(child_begin())); } const Expr *getX() const { return cast_or_null<Expr>(*std::next(child_begin())); } - /// \brief Get helper expression of the form + /// Get helper expression of the form /// 'OpaqueValueExpr(x) binop OpaqueValueExpr(expr)' or /// 'OpaqueValueExpr(expr) binop OpaqueValueExpr(x)'. Expr *getUpdateExpr() { @@ -2196,19 +2220,19 @@ public: const Expr *getUpdateExpr() const { return cast_or_null<Expr>(*std::next(child_begin(), 2)); } - /// \brief Return true if helper update expression has form + /// Return true if helper update expression has form /// 'OpaqueValueExpr(x) binop OpaqueValueExpr(expr)' and false if it has form /// 'OpaqueValueExpr(expr) binop OpaqueValueExpr(x)'. bool isXLHSInRHSPart() const { return IsXLHSInRHSPart; } - /// \brief Return true if 'v' expression must be updated to original value of + /// Return true if 'v' expression must be updated to original value of /// 'x', false if 'v' must be updated to the new value of 'x'. bool isPostfixUpdate() const { return IsPostfixUpdate; } - /// \brief Get 'v' part of the associated expression/statement. + /// Get 'v' part of the associated expression/statement. Expr *getV() { return cast_or_null<Expr>(*std::next(child_begin(), 3)); } const Expr *getV() const { return cast_or_null<Expr>(*std::next(child_begin(), 3)); } - /// \brief Get 'expr' part of the associated expression/statement. + /// Get 'expr' part of the associated expression/statement. Expr *getExpr() { return cast_or_null<Expr>(*std::next(child_begin(), 4)); } const Expr *getExpr() const { return cast_or_null<Expr>(*std::next(child_begin(), 4)); @@ -2219,7 +2243,7 @@ public: } }; -/// \brief This represents '#pragma omp target' directive. +/// This represents '#pragma omp target' directive. /// /// \code /// #pragma omp target if(a) @@ -2229,7 +2253,7 @@ public: /// class OMPTargetDirective : public OMPExecutableDirective { friend class ASTStmtReader; - /// \brief Build directive with the given start and end location. + /// Build directive with the given start and end location. /// /// \param StartLoc Starting location of the directive kind. /// \param EndLoc Ending location of the directive. @@ -2240,7 +2264,7 @@ class OMPTargetDirective : public OMPExecutableDirective { : OMPExecutableDirective(this, OMPTargetDirectiveClass, OMPD_target, StartLoc, EndLoc, NumClauses, 1) {} - /// \brief Build an empty directive. + /// Build an empty directive. /// /// \param NumClauses Number of clauses. /// @@ -2250,7 +2274,7 @@ class OMPTargetDirective : public OMPExecutableDirective { 1) {} public: - /// \brief Creates directive with a list of \a Clauses. + /// Creates directive with a list of \a Clauses. /// /// \param C AST context. /// \param StartLoc Starting location of the directive kind. @@ -2262,7 +2286,7 @@ public: Create(const ASTContext &C, SourceLocation StartLoc, SourceLocation EndLoc, ArrayRef<OMPClause *> Clauses, Stmt *AssociatedStmt); - /// \brief Creates an empty directive with the place for \a NumClauses + /// Creates an empty directive with the place for \a NumClauses /// clauses. /// /// \param C AST context. @@ -2276,7 +2300,7 @@ public: } }; -/// \brief This represents '#pragma omp target data' directive. +/// This represents '#pragma omp target data' directive. /// /// \code /// #pragma omp target data device(0) if(a) map(b[:]) @@ -2287,7 +2311,7 @@ public: /// class OMPTargetDataDirective : public OMPExecutableDirective { friend class ASTStmtReader; - /// \brief Build directive with the given start and end location. + /// Build directive with the given start and end location. /// /// \param StartLoc Starting location of the directive kind. /// \param EndLoc Ending Location of the directive. @@ -2299,7 +2323,7 @@ class OMPTargetDataDirective : public OMPExecutableDirective { OMPD_target_data, StartLoc, EndLoc, NumClauses, 1) {} - /// \brief Build an empty directive. + /// Build an empty directive. /// /// \param NumClauses Number of clauses. /// @@ -2309,7 +2333,7 @@ class OMPTargetDataDirective : public OMPExecutableDirective { SourceLocation(), NumClauses, 1) {} public: - /// \brief Creates directive with a list of \a Clauses. + /// Creates directive with a list of \a Clauses. /// /// \param C AST context. /// \param StartLoc Starting location of the directive kind. @@ -2321,7 +2345,7 @@ public: Create(const ASTContext &C, SourceLocation StartLoc, SourceLocation EndLoc, ArrayRef<OMPClause *> Clauses, Stmt *AssociatedStmt); - /// \brief Creates an empty directive with the place for \a N clauses. + /// Creates an empty directive with the place for \a N clauses. /// /// \param C AST context. /// \param N The number of clauses. @@ -2334,7 +2358,7 @@ public: } }; -/// \brief This represents '#pragma omp target enter data' directive. +/// This represents '#pragma omp target enter data' directive. /// /// \code /// #pragma omp target enter data device(0) if(a) map(b[:]) @@ -2345,7 +2369,7 @@ public: /// class OMPTargetEnterDataDirective : public OMPExecutableDirective { friend class ASTStmtReader; - /// \brief Build directive with the given start and end location. + /// Build directive with the given start and end location. /// /// \param StartLoc Starting location of the directive kind. /// \param EndLoc Ending Location of the directive. @@ -2357,7 +2381,7 @@ class OMPTargetEnterDataDirective : public OMPExecutableDirective { OMPD_target_enter_data, StartLoc, EndLoc, NumClauses, /*NumChildren=*/1) {} - /// \brief Build an empty directive. + /// Build an empty directive. /// /// \param NumClauses Number of clauses. /// @@ -2368,7 +2392,7 @@ class OMPTargetEnterDataDirective : public OMPExecutableDirective { /*NumChildren=*/1) {} public: - /// \brief Creates directive with a list of \a Clauses. + /// Creates directive with a list of \a Clauses. /// /// \param C AST context. /// \param StartLoc Starting location of the directive kind. @@ -2380,7 +2404,7 @@ public: Create(const ASTContext &C, SourceLocation StartLoc, SourceLocation EndLoc, ArrayRef<OMPClause *> Clauses, Stmt *AssociatedStmt); - /// \brief Creates an empty directive with the place for \a N clauses. + /// Creates an empty directive with the place for \a N clauses. /// /// \param C AST context. /// \param N The number of clauses. @@ -2393,7 +2417,7 @@ public: } }; -/// \brief This represents '#pragma omp target exit data' directive. +/// This represents '#pragma omp target exit data' directive. /// /// \code /// #pragma omp target exit data device(0) if(a) map(b[:]) @@ -2404,7 +2428,7 @@ public: /// class OMPTargetExitDataDirective : public OMPExecutableDirective { friend class ASTStmtReader; - /// \brief Build directive with the given start and end location. + /// Build directive with the given start and end location. /// /// \param StartLoc Starting location of the directive kind. /// \param EndLoc Ending Location of the directive. @@ -2416,7 +2440,7 @@ class OMPTargetExitDataDirective : public OMPExecutableDirective { OMPD_target_exit_data, StartLoc, EndLoc, NumClauses, /*NumChildren=*/1) {} - /// \brief Build an empty directive. + /// Build an empty directive. /// /// \param NumClauses Number of clauses. /// @@ -2427,7 +2451,7 @@ class OMPTargetExitDataDirective : public OMPExecutableDirective { /*NumChildren=*/1) {} public: - /// \brief Creates directive with a list of \a Clauses. + /// Creates directive with a list of \a Clauses. /// /// \param C AST context. /// \param StartLoc Starting location of the directive kind. @@ -2439,7 +2463,7 @@ public: Create(const ASTContext &C, SourceLocation StartLoc, SourceLocation EndLoc, ArrayRef<OMPClause *> Clauses, Stmt *AssociatedStmt); - /// \brief Creates an empty directive with the place for \a N clauses. + /// Creates an empty directive with the place for \a N clauses. /// /// \param C AST context. /// \param N The number of clauses. @@ -2452,7 +2476,7 @@ public: } }; -/// \brief This represents '#pragma omp target parallel' directive. +/// This represents '#pragma omp target parallel' directive. /// /// \code /// #pragma omp target parallel if(a) @@ -2462,7 +2486,7 @@ public: /// class OMPTargetParallelDirective : public OMPExecutableDirective { friend class ASTStmtReader; - /// \brief Build directive with the given start and end location. + /// Build directive with the given start and end location. /// /// \param StartLoc Starting location of the directive kind. /// \param EndLoc Ending location of the directive. @@ -2474,7 +2498,7 @@ class OMPTargetParallelDirective : public OMPExecutableDirective { OMPD_target_parallel, StartLoc, EndLoc, NumClauses, /*NumChildren=*/1) {} - /// \brief Build an empty directive. + /// Build an empty directive. /// /// \param NumClauses Number of clauses. /// @@ -2485,7 +2509,7 @@ class OMPTargetParallelDirective : public OMPExecutableDirective { /*NumChildren=*/1) {} public: - /// \brief Creates directive with a list of \a Clauses. + /// Creates directive with a list of \a Clauses. /// /// \param C AST context. /// \param StartLoc Starting location of the directive kind. @@ -2497,7 +2521,7 @@ public: Create(const ASTContext &C, SourceLocation StartLoc, SourceLocation EndLoc, ArrayRef<OMPClause *> Clauses, Stmt *AssociatedStmt); - /// \brief Creates an empty directive with the place for \a NumClauses + /// Creates an empty directive with the place for \a NumClauses /// clauses. /// /// \param C AST context. @@ -2511,7 +2535,7 @@ public: } }; -/// \brief This represents '#pragma omp target parallel for' directive. +/// This represents '#pragma omp target parallel for' directive. /// /// \code /// #pragma omp target parallel for private(a,b) reduction(+:c,d) @@ -2523,10 +2547,10 @@ public: class OMPTargetParallelForDirective : public OMPLoopDirective { friend class ASTStmtReader; - /// \brief true if current region has inner cancel directive. + /// true if current region has inner cancel directive. bool HasCancel; - /// \brief Build directive with the given start and end location. + /// Build directive with the given start and end location. /// /// \param StartLoc Starting location of the directive kind. /// \param EndLoc Ending location of the directive. @@ -2540,7 +2564,7 @@ class OMPTargetParallelForDirective : public OMPLoopDirective { CollapsedNum, NumClauses), HasCancel(false) {} - /// \brief Build an empty directive. + /// Build an empty directive. /// /// \param CollapsedNum Number of collapsed nested loops. /// \param NumClauses Number of clauses. @@ -2552,11 +2576,11 @@ class OMPTargetParallelForDirective : public OMPLoopDirective { SourceLocation(), CollapsedNum, NumClauses), HasCancel(false) {} - /// \brief Set cancel state. + /// Set cancel state. void setHasCancel(bool Has) { HasCancel = Has; } public: - /// \brief Creates directive with a list of \a Clauses. + /// Creates directive with a list of \a Clauses. /// /// \param C AST context. /// \param StartLoc Starting location of the directive kind. @@ -2572,7 +2596,7 @@ public: unsigned CollapsedNum, ArrayRef<OMPClause *> Clauses, Stmt *AssociatedStmt, const HelperExprs &Exprs, bool HasCancel); - /// \brief Creates an empty directive with the place + /// Creates an empty directive with the place /// for \a NumClauses clauses. /// /// \param C AST context. @@ -2584,7 +2608,7 @@ public: unsigned CollapsedNum, EmptyShell); - /// \brief Return true if current directive has inner cancel directive. + /// Return true if current directive has inner cancel directive. bool hasCancel() const { return HasCancel; } static bool classof(const Stmt *T) { @@ -2592,7 +2616,7 @@ public: } }; -/// \brief This represents '#pragma omp teams' directive. +/// This represents '#pragma omp teams' directive. /// /// \code /// #pragma omp teams if(a) @@ -2602,7 +2626,7 @@ public: /// class OMPTeamsDirective : public OMPExecutableDirective { friend class ASTStmtReader; - /// \brief Build directive with the given start and end location. + /// Build directive with the given start and end location. /// /// \param StartLoc Starting location of the directive kind. /// \param EndLoc Ending location of the directive. @@ -2613,7 +2637,7 @@ class OMPTeamsDirective : public OMPExecutableDirective { : OMPExecutableDirective(this, OMPTeamsDirectiveClass, OMPD_teams, StartLoc, EndLoc, NumClauses, 1) {} - /// \brief Build an empty directive. + /// Build an empty directive. /// /// \param NumClauses Number of clauses. /// @@ -2623,7 +2647,7 @@ class OMPTeamsDirective : public OMPExecutableDirective { 1) {} public: - /// \brief Creates directive with a list of \a Clauses. + /// Creates directive with a list of \a Clauses. /// /// \param C AST context. /// \param StartLoc Starting location of the directive kind. @@ -2636,7 +2660,7 @@ public: ArrayRef<OMPClause *> Clauses, Stmt *AssociatedStmt); - /// \brief Creates an empty directive with the place for \a NumClauses + /// Creates an empty directive with the place for \a NumClauses /// clauses. /// /// \param C AST context. @@ -2650,7 +2674,7 @@ public: } }; -/// \brief This represents '#pragma omp cancellation point' directive. +/// This represents '#pragma omp cancellation point' directive. /// /// \code /// #pragma omp cancellation point for @@ -2660,7 +2684,7 @@ public: class OMPCancellationPointDirective : public OMPExecutableDirective { friend class ASTStmtReader; OpenMPDirectiveKind CancelRegion; - /// \brief Build directive with the given start and end location. + /// Build directive with the given start and end location. /// /// \param StartLoc Starting location of the directive kind. /// \param EndLoc Ending location of the directive. @@ -2670,7 +2694,7 @@ class OMPCancellationPointDirective : public OMPExecutableDirective { OMPD_cancellation_point, StartLoc, EndLoc, 0, 0), CancelRegion(OMPD_unknown) {} - /// \brief Build an empty directive. + /// Build an empty directive. /// explicit OMPCancellationPointDirective() : OMPExecutableDirective(this, OMPCancellationPointDirectiveClass, @@ -2678,12 +2702,12 @@ class OMPCancellationPointDirective : public OMPExecutableDirective { SourceLocation(), 0, 0), CancelRegion(OMPD_unknown) {} - /// \brief Set cancel region for current cancellation point. + /// Set cancel region for current cancellation point. /// \param CR Cancellation region. void setCancelRegion(OpenMPDirectiveKind CR) { CancelRegion = CR; } public: - /// \brief Creates directive. + /// Creates directive. /// /// \param C AST context. /// \param StartLoc Starting location of the directive kind. @@ -2693,14 +2717,14 @@ public: Create(const ASTContext &C, SourceLocation StartLoc, SourceLocation EndLoc, OpenMPDirectiveKind CancelRegion); - /// \brief Creates an empty directive. + /// Creates an empty directive. /// /// \param C AST context. /// static OMPCancellationPointDirective *CreateEmpty(const ASTContext &C, EmptyShell); - /// \brief Get cancellation region for the current cancellation point. + /// Get cancellation region for the current cancellation point. OpenMPDirectiveKind getCancelRegion() const { return CancelRegion; } static bool classof(const Stmt *T) { @@ -2708,7 +2732,7 @@ public: } }; -/// \brief This represents '#pragma omp cancel' directive. +/// This represents '#pragma omp cancel' directive. /// /// \code /// #pragma omp cancel for @@ -2718,7 +2742,7 @@ public: class OMPCancelDirective : public OMPExecutableDirective { friend class ASTStmtReader; OpenMPDirectiveKind CancelRegion; - /// \brief Build directive with the given start and end location. + /// Build directive with the given start and end location. /// /// \param StartLoc Starting location of the directive kind. /// \param EndLoc Ending location of the directive. @@ -2730,7 +2754,7 @@ class OMPCancelDirective : public OMPExecutableDirective { StartLoc, EndLoc, NumClauses, 0), CancelRegion(OMPD_unknown) {} - /// \brief Build an empty directive. + /// Build an empty directive. /// /// \param NumClauses Number of clauses. explicit OMPCancelDirective(unsigned NumClauses) @@ -2739,12 +2763,12 @@ class OMPCancelDirective : public OMPExecutableDirective { 0), CancelRegion(OMPD_unknown) {} - /// \brief Set cancel region for current cancellation point. + /// Set cancel region for current cancellation point. /// \param CR Cancellation region. void setCancelRegion(OpenMPDirectiveKind CR) { CancelRegion = CR; } public: - /// \brief Creates directive. + /// Creates directive. /// /// \param C AST context. /// \param StartLoc Starting location of the directive kind. @@ -2755,7 +2779,7 @@ public: Create(const ASTContext &C, SourceLocation StartLoc, SourceLocation EndLoc, ArrayRef<OMPClause *> Clauses, OpenMPDirectiveKind CancelRegion); - /// \brief Creates an empty directive. + /// Creates an empty directive. /// /// \param C AST context. /// \param NumClauses Number of clauses. @@ -2763,7 +2787,7 @@ public: static OMPCancelDirective *CreateEmpty(const ASTContext &C, unsigned NumClauses, EmptyShell); - /// \brief Get cancellation region for the current cancellation point. + /// Get cancellation region for the current cancellation point. OpenMPDirectiveKind getCancelRegion() const { return CancelRegion; } static bool classof(const Stmt *T) { @@ -2771,7 +2795,7 @@ public: } }; -/// \brief This represents '#pragma omp taskloop' directive. +/// This represents '#pragma omp taskloop' directive. /// /// \code /// #pragma omp taskloop private(a,b) grainsize(val) num_tasks(num) @@ -2782,7 +2806,7 @@ public: /// class OMPTaskLoopDirective : public OMPLoopDirective { friend class ASTStmtReader; - /// \brief Build directive with the given start and end location. + /// Build directive with the given start and end location. /// /// \param StartLoc Starting location of the directive kind. /// \param EndLoc Ending location of the directive. @@ -2794,7 +2818,7 @@ class OMPTaskLoopDirective : public OMPLoopDirective { : OMPLoopDirective(this, OMPTaskLoopDirectiveClass, OMPD_taskloop, StartLoc, EndLoc, CollapsedNum, NumClauses) {} - /// \brief Build an empty directive. + /// Build an empty directive. /// /// \param CollapsedNum Number of collapsed nested loops. /// \param NumClauses Number of clauses. @@ -2805,7 +2829,7 @@ class OMPTaskLoopDirective : public OMPLoopDirective { NumClauses) {} public: - /// \brief Creates directive with a list of \a Clauses. + /// Creates directive with a list of \a Clauses. /// /// \param C AST context. /// \param StartLoc Starting location of the directive kind. @@ -2820,7 +2844,7 @@ public: unsigned CollapsedNum, ArrayRef<OMPClause *> Clauses, Stmt *AssociatedStmt, const HelperExprs &Exprs); - /// \brief Creates an empty directive with the place + /// Creates an empty directive with the place /// for \a NumClauses clauses. /// /// \param C AST context. @@ -2836,7 +2860,7 @@ public: } }; -/// \brief This represents '#pragma omp taskloop simd' directive. +/// This represents '#pragma omp taskloop simd' directive. /// /// \code /// #pragma omp taskloop simd private(a,b) grainsize(val) num_tasks(num) @@ -2847,7 +2871,7 @@ public: /// class OMPTaskLoopSimdDirective : public OMPLoopDirective { friend class ASTStmtReader; - /// \brief Build directive with the given start and end location. + /// Build directive with the given start and end location. /// /// \param StartLoc Starting location of the directive kind. /// \param EndLoc Ending location of the directive. @@ -2860,7 +2884,7 @@ class OMPTaskLoopSimdDirective : public OMPLoopDirective { OMPD_taskloop_simd, StartLoc, EndLoc, CollapsedNum, NumClauses) {} - /// \brief Build an empty directive. + /// Build an empty directive. /// /// \param CollapsedNum Number of collapsed nested loops. /// \param NumClauses Number of clauses. @@ -2871,7 +2895,7 @@ class OMPTaskLoopSimdDirective : public OMPLoopDirective { CollapsedNum, NumClauses) {} public: - /// \brief Creates directive with a list of \a Clauses. + /// Creates directive with a list of \a Clauses. /// /// \param C AST context. /// \param StartLoc Starting location of the directive kind. @@ -2886,7 +2910,7 @@ public: unsigned CollapsedNum, ArrayRef<OMPClause *> Clauses, Stmt *AssociatedStmt, const HelperExprs &Exprs); - /// \brief Creates an empty directive with the place + /// Creates an empty directive with the place /// for \a NumClauses clauses. /// /// \param C AST context. @@ -2903,7 +2927,7 @@ public: } }; -/// \brief This represents '#pragma omp distribute' directive. +/// This represents '#pragma omp distribute' directive. /// /// \code /// #pragma omp distribute private(a,b) @@ -2914,7 +2938,7 @@ public: class OMPDistributeDirective : public OMPLoopDirective { friend class ASTStmtReader; - /// \brief Build directive with the given start and end location. + /// Build directive with the given start and end location. /// /// \param StartLoc Starting location of the directive kind. /// \param EndLoc Ending location of the directive. @@ -2927,7 +2951,7 @@ class OMPDistributeDirective : public OMPLoopDirective { StartLoc, EndLoc, CollapsedNum, NumClauses) {} - /// \brief Build an empty directive. + /// Build an empty directive. /// /// \param CollapsedNum Number of collapsed nested loops. /// \param NumClauses Number of clauses. @@ -2939,7 +2963,7 @@ class OMPDistributeDirective : public OMPLoopDirective { {} public: - /// \brief Creates directive with a list of \a Clauses. + /// Creates directive with a list of \a Clauses. /// /// \param C AST context. /// \param StartLoc Starting location of the directive kind. @@ -2954,7 +2978,7 @@ public: unsigned CollapsedNum, ArrayRef<OMPClause *> Clauses, Stmt *AssociatedStmt, const HelperExprs &Exprs); - /// \brief Creates an empty directive with the place + /// Creates an empty directive with the place /// for \a NumClauses clauses. /// /// \param C AST context. @@ -2970,7 +2994,7 @@ public: } }; -/// \brief This represents '#pragma omp target update' directive. +/// This represents '#pragma omp target update' directive. /// /// \code /// #pragma omp target update to(a) from(b) device(1) @@ -2981,7 +3005,7 @@ public: /// class OMPTargetUpdateDirective : public OMPExecutableDirective { friend class ASTStmtReader; - /// \brief Build directive with the given start and end location. + /// Build directive with the given start and end location. /// /// \param StartLoc Starting location of the directive kind. /// \param EndLoc Ending Location of the directive. @@ -2993,7 +3017,7 @@ class OMPTargetUpdateDirective : public OMPExecutableDirective { OMPD_target_update, StartLoc, EndLoc, NumClauses, 1) {} - /// \brief Build an empty directive. + /// Build an empty directive. /// /// \param NumClauses Number of clauses. /// @@ -3003,7 +3027,7 @@ class OMPTargetUpdateDirective : public OMPExecutableDirective { SourceLocation(), NumClauses, 1) {} public: - /// \brief Creates directive with a list of \a Clauses. + /// Creates directive with a list of \a Clauses. /// /// \param C AST context. /// \param StartLoc Starting location of the directive kind. @@ -3015,7 +3039,7 @@ public: Create(const ASTContext &C, SourceLocation StartLoc, SourceLocation EndLoc, ArrayRef<OMPClause *> Clauses, Stmt *AssociatedStmt); - /// \brief Creates an empty directive with the place for \a NumClauses + /// Creates an empty directive with the place for \a NumClauses /// clauses. /// /// \param C AST context. @@ -3029,7 +3053,7 @@ public: } }; -/// \brief This represents '#pragma omp distribute parallel for' composite +/// This represents '#pragma omp distribute parallel for' composite /// directive. /// /// \code @@ -3043,7 +3067,7 @@ class OMPDistributeParallelForDirective : public OMPLoopDirective { /// true if the construct has inner cancel directive. bool HasCancel = false; - /// \brief Build directive with the given start and end location. + /// Build directive with the given start and end location. /// /// \param StartLoc Starting location of the directive kind. /// \param EndLoc Ending location of the directive. @@ -3057,7 +3081,7 @@ class OMPDistributeParallelForDirective : public OMPLoopDirective { OMPD_distribute_parallel_for, StartLoc, EndLoc, CollapsedNum, NumClauses), HasCancel(false) {} - /// \brief Build an empty directive. + /// Build an empty directive. /// /// \param CollapsedNum Number of collapsed nested loops. /// \param NumClauses Number of clauses. @@ -3073,7 +3097,7 @@ class OMPDistributeParallelForDirective : public OMPLoopDirective { void setHasCancel(bool Has) { HasCancel = Has; } public: - /// \brief Creates directive with a list of \a Clauses. + /// Creates directive with a list of \a Clauses. /// /// \param C AST context. /// \param StartLoc Starting location of the directive kind. @@ -3089,7 +3113,7 @@ public: unsigned CollapsedNum, ArrayRef<OMPClause *> Clauses, Stmt *AssociatedStmt, const HelperExprs &Exprs, bool HasCancel); - /// \brief Creates an empty directive with the place + /// Creates an empty directive with the place /// for \a NumClauses clauses. /// /// \param C AST context. |
