|
clang 24.0.0git
|
This file defines OpenMP AST classes for executable directives and clauses. More...
#include "clang/AST/ASTContext.h"#include "clang/AST/Expr.h"#include "clang/AST/OpenMPClause.h"#include "clang/AST/Stmt.h"#include "clang/AST/StmtCXX.h"#include "clang/Basic/OpenMPKinds.h"#include "clang/Basic/SourceLocation.h"#include "llvm/Support/Casting.h"Go to the source code of this file.
Classes | |
| class | OMPLoopTransformationDirective |
| Common class of data shared between OMPCanonicalLoopNestTransformationDirective and OMPCanonicalLoopSequenceTransformationDirective. More... | |
| class | OMPCanonicalLoopNestTransformationDirective |
| The base class for all transformation directives of canonical loop nests. More... | |
| class | OMPLoopDirective |
| 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. More... | |
| class | OMPSimdDirective |
| This represents '#pragma omp simd' directive. More... | |
| class | OMPForDirective |
| This represents '#pragma omp for' directive. More... | |
| class | OMPForSimdDirective |
| This represents '#pragma omp for simd' directive. More... | |
| class | OMPSectionsDirective |
| This represents '#pragma omp sections' directive. More... | |
| class | OMPSectionDirective |
| This represents '#pragma omp section' directive. More... | |
| class | OMPScopeDirective |
| This represents '#pragma omp scope' directive. More... | |
| class | OMPSingleDirective |
| This represents '#pragma omp single' directive. More... | |
| class | OMPMasterDirective |
| This represents '#pragma omp master' directive. More... | |
| class | OMPCriticalDirective |
| This represents '#pragma omp critical' directive. More... | |
| class | OMPParallelForDirective |
| This represents '#pragma omp parallel for' directive. More... | |
| class | OMPParallelForSimdDirective |
| This represents '#pragma omp parallel for simd' directive. More... | |
| class | OMPParallelMasterDirective |
| This represents '#pragma omp parallel master' directive. More... | |
| class | OMPParallelMaskedDirective |
| This represents '#pragma omp parallel masked' directive. More... | |
| class | OMPParallelSectionsDirective |
| This represents '#pragma omp parallel sections' directive. More... | |
| class | OMPTaskDirective |
| This represents '#pragma omp task' directive. More... | |
| class | OMPTaskyieldDirective |
| This represents '#pragma omp taskyield' directive. More... | |
| class | OMPBarrierDirective |
| This represents '#pragma omp barrier' directive. More... | |
| class | OMPTaskwaitDirective |
| This represents '#pragma omp taskwait' directive. More... | |
| class | OMPTaskgroupDirective |
| This represents '#pragma omp taskgroup' directive. More... | |
| class | OMPFlushDirective |
| This represents '#pragma omp flush' directive. More... | |
| class | OMPDepobjDirective |
| This represents '#pragma omp depobj' directive. More... | |
| class | OMPOrderedStandaloneDirective |
| This represents standalone '#pragma omp ordered' directive. More... | |
| class | OMPOrderedBlockAssocDirective |
| This represents block-associated '#pragma omp ordered' directive. More... | |
| class | OMPAtomicDirective |
| This represents '#pragma omp atomic' directive. More... | |
| struct | OMPAtomicDirective::Expressions |
| class | OMPTargetDirective |
| This represents '#pragma omp target' directive. More... | |
| class | OMPTargetDataDirective |
| This represents '#pragma omp target data' directive. More... | |
| class | OMPTargetEnterDataDirective |
| This represents '#pragma omp target enter data' directive. More... | |
| class | OMPTargetExitDataDirective |
| This represents '#pragma omp target exit data' directive. More... | |
| class | OMPTargetParallelDirective |
| This represents '#pragma omp target parallel' directive. More... | |
| class | OMPTargetParallelForDirective |
| This represents '#pragma omp target parallel for' directive. More... | |
| class | OMPTeamsDirective |
| This represents '#pragma omp teams' directive. More... | |
| class | OMPCancellationPointDirective |
| This represents '#pragma omp cancellation point' directive. More... | |
| class | OMPCancelDirective |
| This represents '#pragma omp cancel' directive. More... | |
| class | OMPTaskLoopDirective |
| This represents '#pragma omp taskloop' directive. More... | |
| class | OMPTaskLoopSimdDirective |
| This represents '#pragma omp taskloop simd' directive. More... | |
| class | OMPMasterTaskLoopDirective |
| This represents '#pragma omp master taskloop' directive. More... | |
| class | OMPMaskedTaskLoopDirective |
| This represents '#pragma omp masked taskloop' directive. More... | |
| class | OMPMasterTaskLoopSimdDirective |
| This represents '#pragma omp master taskloop simd' directive. More... | |
| class | OMPMaskedTaskLoopSimdDirective |
| This represents '#pragma omp masked taskloop simd' directive. More... | |
| class | OMPParallelMasterTaskLoopDirective |
| This represents '#pragma omp parallel master taskloop' directive. More... | |
| class | OMPParallelMaskedTaskLoopDirective |
| This represents '#pragma omp parallel masked taskloop' directive. More... | |
| class | OMPParallelMasterTaskLoopSimdDirective |
| This represents '#pragma omp parallel master taskloop simd' directive. More... | |
| class | OMPParallelMaskedTaskLoopSimdDirective |
| This represents '#pragma omp parallel masked taskloop simd' directive. More... | |
| class | OMPDistributeDirective |
| This represents '#pragma omp distribute' directive. More... | |
| class | OMPTargetUpdateDirective |
| This represents '#pragma omp target update' directive. More... | |
| class | OMPDistributeParallelForDirective |
| This represents '#pragma omp distribute parallel for' composite directive. More... | |
| class | OMPDistributeParallelForSimdDirective |
| This represents '#pragma omp distribute parallel for simd' composite directive. More... | |
| class | OMPDistributeSimdDirective |
| This represents '#pragma omp distribute simd' composite directive. More... | |
| class | OMPTargetParallelForSimdDirective |
| This represents '#pragma omp target parallel for simd' directive. More... | |
| class | OMPTargetSimdDirective |
| This represents '#pragma omp target simd' directive. More... | |
| class | OMPTeamsDistributeDirective |
| This represents '#pragma omp teams distribute' directive. More... | |
| class | OMPTeamsDistributeSimdDirective |
| This represents '#pragma omp teams distribute simd' combined directive. More... | |
| class | OMPTeamsDistributeParallelForSimdDirective |
| This represents '#pragma omp teams distribute parallel for simd' composite directive. More... | |
| class | OMPTeamsDistributeParallelForDirective |
| This represents '#pragma omp teams distribute parallel for' composite directive. More... | |
| class | OMPTargetTeamsDirective |
| This represents '#pragma omp target teams' directive. More... | |
| class | OMPTargetTeamsDistributeDirective |
| This represents '#pragma omp target teams distribute' combined directive. More... | |
| class | OMPTargetTeamsDistributeParallelForDirective |
| This represents '#pragma omp target teams distribute parallel for' combined directive. More... | |
| class | OMPTargetTeamsDistributeParallelForSimdDirective |
| This represents '#pragma omp target teams distribute parallel for simd' combined directive. More... | |
| class | OMPTargetTeamsDistributeSimdDirective |
| This represents '#pragma omp target teams distribute simd' combined directive. More... | |
| class | OMPTileDirective |
| This represents the '#pragma omp tile' loop transformation directive. More... | |
| class | OMPStripeDirective |
| This represents the '#pragma omp stripe' loop transformation directive. More... | |
| class | OMPUnrollDirective |
| This represents the '#pragma omp unroll' loop transformation directive. More... | |
| class | OMPReverseDirective |
| Represents the '#pragma omp reverse' loop transformation directive. More... | |
| class | OMPInterchangeDirective |
| Represents the '#pragma omp interchange' loop transformation directive. More... | |
| class | OMPCanonicalLoopSequenceTransformationDirective |
| The base class for all transformation directives of canonical loop sequences (currently only 'fuse') More... | |
| class | OMPFuseDirective |
| Represents the '#pragma omp fuse' loop transformation directive. More... | |
| class | OMPSplitDirective |
| Represents the '#pragma omp split' loop transformation directive. More... | |
| class | OMPScanDirective |
| This represents '#pragma omp scan' directive. More... | |
| class | OMPInteropDirective |
| This represents '#pragma omp interop' directive. More... | |
| class | OMPDispatchDirective |
| This represents '#pragma omp dispatch' directive. More... | |
| class | OMPMaskedDirective |
| This represents '#pragma omp masked' directive. More... | |
| class | OMPMetaDirective |
| This represents '#pragma omp metadirective' directive. More... | |
| class | OMPGenericLoopDirective |
| This represents '#pragma omp loop' directive. More... | |
| class | OMPTeamsGenericLoopDirective |
| This represents '#pragma omp teams loop' directive. More... | |
| class | OMPTargetTeamsGenericLoopDirective |
| This represents '#pragma omp target teams loop' directive. More... | |
| class | OMPParallelGenericLoopDirective |
| This represents '#pragma omp parallel loop' directive. More... | |
| class | OMPTargetParallelGenericLoopDirective |
| This represents '#pragma omp target parallel loop' directive. More... | |
| class | OMPErrorDirective |
| This represents '#pragma omp error' directive. More... | |
| class | OMPAssumeDirective |
| struct | llvm::CastInfo< clang::OMPLoopTransformationDirective, clang::Stmt * > |
| struct | llvm::CastInfo< clang::OMPLoopTransformationDirective, const clang::Stmt * > |
Namespaces | |
| namespace | clang |
| Top level wrappers for InstallAPI frontend operations. | |
| namespace | llvm |
| Diagnostic wrappers for TextAPI types for error reporting. | |
Functions | |
| static bool | clang::doForAllLoops (Stmt *CurStmt, bool TryImperfectlyNestedLoops, unsigned NumLoops, llvm::function_ref< bool(unsigned, Stmt *)> Callback, llvm::function_ref< void(OMPLoopTransformationDirective *)> OnTransformationCallback) |
| static bool | clang::doForAllLoops (const Stmt *CurStmt, bool TryImperfectlyNestedLoops, unsigned NumLoops, llvm::function_ref< bool(unsigned, const Stmt *)> Callback, llvm::function_ref< void(const OMPLoopTransformationDirective *)> OnTransformationCallback) |
| static bool | clang::doForAllLoops (Stmt *CurStmt, bool TryImperfectlyNestedLoops, unsigned NumLoops, llvm::function_ref< bool(unsigned, Stmt *)> Callback) |
Calls the specified callback function for all the loops in CurStmt, from the outermost to the innermost. | |
| static bool | clang::doForAllLoops (const Stmt *CurStmt, bool TryImperfectlyNestedLoops, unsigned NumLoops, llvm::function_ref< bool(unsigned, const Stmt *)> Callback) |
| static void | clang::doForAllLoopsBodies (Stmt *CurStmt, bool TryImperfectlyNestedLoops, unsigned NumLoops, llvm::function_ref< void(unsigned, Stmt *, Stmt *)> Callback) |
Calls the specified callback function for all the loop bodies in CurStmt, from the outermost loop to the innermost. | |
| static void | clang::doForAllLoopsBodies (const Stmt *CurStmt, bool TryImperfectlyNestedLoops, unsigned NumLoops, llvm::function_ref< void(unsigned, const Stmt *, const Stmt *)> Callback) |
| static bool | clang::classof (const Stmt *T) |
Variables | |
| Stmt Stmt * | clang::Callback |
| Stmt Stmt llvm::function_ref< void(OMPLoopTransformationDirective *)> | clang::OnTransformationCallback |
This file defines OpenMP AST classes for executable directives and clauses.
Definition in file StmtOpenMP.h.