|
using | ClauseMapTy |
| DirectiveStructureChecker (SemanticsContext &context, const std::unordered_map< llvm::omp::Directive, DirectiveClauses< llvm::omp::Clause, ClauseEnumSize > > &directiveClausesMap) |
void | SetLoopIv (Symbol *symbol) |
DirectiveContext & | GetContext () |
DirectiveContext & | GetContextParent () |
void | SetContextClause (const parser::OmpClause &clause) |
void | ResetPartialContext (const parser::CharBlock &source) |
void | SetContextDirectiveSource (const parser::CharBlock &directive) |
void | SetContextDirectiveEnum (llvm::omp::Directive dir) |
void | SetContextAllowed (const common::EnumSet< llvm::omp::Clause, ClauseEnumSize > &allowed) |
void | SetContextAllowedOnce (const common::EnumSet< llvm::omp::Clause, ClauseEnumSize > &allowedOnce) |
void | SetContextAllowedExclusive (const common::EnumSet< llvm::omp::Clause, ClauseEnumSize > &allowedExclusive) |
void | SetContextRequired (const common::EnumSet< llvm::omp::Clause, ClauseEnumSize > &required) |
void | SetContextClauseInfo (llvm::omp::Clause type) |
void | AddClauseToCrtContext (llvm::omp::Clause type) |
void | AddClauseToCrtGroupInContext (llvm::omp::Clause type) |
void | ResetCrtGroup () |
const parser::OmpClause * | FindClause (llvm::omp::Clause type) |
const parser::OmpClause * | FindClause (DirectiveContext &context, llvm::omp::Clause type) |
const parser::OmpClause * | FindClauseParent (llvm::omp::Clause type) |
llvm::iterator_range< typename ClauseMapTy::iterator > | FindClauses (llvm::omp::Clause type) |
DirectiveContext * | GetEnclosingDirContext () |
void | PushContext (const parser::CharBlock &source, llvm::omp::Directive dir) |
DirectiveContext * | GetEnclosingContextWithDir (llvm::omp::Directive dir) |
bool | CurrentDirectiveIsNested () |
void | SetClauseSets (llvm::omp::Directive dir) |
void | PushContextAndClauseSets (const parser::CharBlock &source, llvm::omp::Directive dir) |
void | SayNotMatching (const parser::CharBlock &, const parser::CharBlock &) |
void | CheckMatching (const B &beginDir, const B &endDir) |
void | CheckNoBranching (const parser::Block &block, llvm::omp::Directive directive, const parser::CharBlock &directiveSource) |
void | CheckOnlyAllowedAfter (llvm::omp::Clause clause, common::EnumSet< llvm::omp::Clause, ClauseEnumSize > set) |
void | CheckRequireAtLeastOneOf (bool warnInsteadOfError=false) |
bool | CheckAllowed (llvm::omp::Clause clause, bool warnInsteadOfError=false) |
void | CheckAllowedOncePerGroup (llvm::omp::Clause clause, llvm::omp::Clause separator) |
void | CheckMutuallyExclusivePerGroup (llvm::omp::Clause clause, llvm::omp::Clause separator, common::EnumSet< llvm::omp::Clause, ClauseEnumSize > set) |
void | CheckAtLeastOneClause () |
void | CheckNotAllowedIfClause (llvm::omp::Clause clause, common::EnumSet< llvm::omp::Clause, ClauseEnumSize > set) |
std::string | ContextDirectiveAsFortran () |
void | RequiresConstantPositiveParameter (const llvm::omp::Clause &clause, const parser::ScalarIntConstantExpr &i) |
void | RequiresPositiveParameter (const llvm::omp::Clause &clause, const parser::ScalarIntExpr &i, llvm::StringRef paramName="parameter") |
void | OptionalConstantPositiveParameter (const llvm::omp::Clause &clause, const std::optional< parser::ScalarIntConstantExpr > &o) |
std::string | ClauseSetToString (const common::EnumSet< llvm::omp::Clause, ClauseEnumSize > set) |
SemanticsContext & | context_ |
std::vector< DirectiveContext > | dirContext_ |
std::unordered_map< llvm::omp::Directive, DirectiveClauses< llvm::omp::Clause, ClauseEnumSize > > | directiveClausesMap_ |