"llvm::omp::Clause = ", llvm::omp::getOpenMPClauseName(x))
.str();
}
- NODE(parser, OmpNowait)
NODE(parser, OmpObject)
NODE(parser, OmpObjectList)
NODE(parser, OmpProcBindClause)
std::variant<Source, Sink, InOut> u;
};
-// 2.7.1 nowait-clause -> NOWAIT
-EMPTY_CLASS(OmpNowait);
-
// dist_schedule clause does not fit in generic clause class for tablegen.
// Therefore it is declared separatly here.
WRAPPER_CLASS(OmpDistScheduleClause, std::optional<ScalarIntExpr>);
"NOGROUP" >> construct<OmpClause>(construct<OmpClause::Nogroup>()) ||
"NOTINBRANCH" >>
construct<OmpClause>(construct<OmpClause::Notinbranch>()) ||
- "NOWAIT" >> construct<OmpClause>(construct<OmpNowait>()) ||
+ "NOWAIT" >> construct<OmpClause>(construct<OmpClause::Nowait>()) ||
"NUM_TASKS" >> construct<OmpClause>(construct<OmpClause::NumTasks>(
parenthesized(scalarIntExpr))) ||
"NUM_TEAMS" >> construct<OmpClause>(construct<OmpClause::NumTeams>(
std::get<std::optional<OmpDefaultmapClause::VariableCategory>>(x.t));
Word(")");
}
- void Unparse(const OmpNowait &) { Word("NOWAIT"); }
void Unparse(const OmpDistScheduleClause &x) {
Word("DIST_SCHEDULE(STATIC");
Walk(", ", x.v);
CHECK_SIMPLE_CLAUSE(Mergeable, OMPC_mergeable)
CHECK_SIMPLE_CLAUSE(Nogroup, OMPC_nogroup)
CHECK_SIMPLE_CLAUSE(Notinbranch, OMPC_notinbranch)
+CHECK_SIMPLE_CLAUSE(Nowait, OMPC_nowait)
CHECK_SIMPLE_CLAUSE(To, OMPC_to)
CHECK_SIMPLE_CLAUSE(Uniform, OMPC_uniform)
CHECK_SIMPLE_CLAUSE(Untied, OMPC_untied)
}
// Following clauses have a seperate node in parse-tree.h.
CHECK_SIMPLE_PARSER_CLAUSE(OmpDistScheduleClause, OMPC_dist_schedule)
-CHECK_SIMPLE_PARSER_CLAUSE(OmpNowait, OMPC_nowait)
CHECK_SIMPLE_PARSER_CLAUSE(OmpReductionClause, OMPC_reduction)
// Atomic-clause
CHECK_SIMPLE_PARSER_CLAUSE(OmpAtomicRead, OMPC_read)
void Leave(const parser::OmpClauseList &);
void Enter(const parser::OmpClause &);
- void Enter(const parser::OmpNowait &);
void Enter(const parser::OmpClause::Allocate &);
void Enter(const parser::OmpClause::Allocator &);
void Enter(const parser::OmpClause::Inbranch &);
void Enter(const parser::OmpClause::Mergeable &);
void Enter(const parser::OmpClause::Nogroup &);
+ void Enter(const parser::OmpClause::Nowait &);
void Enter(const parser::OmpClause::Notinbranch &);
void Enter(const parser::OmpClause::Untied &);
void Enter(const parser::OmpClause::Collapse &);
}
def OMPC_NoWait : Clause<"nowait"> {
let clangClass = "OMPNowaitClause";
- let flangClass = "OmpNowait";
}
def OMPC_Untied : Clause<"untied"> { let clangClass = "OMPUntiedClause"; }
def OMPC_Mergeable : Clause<"mergeable"> {