clang 19.0.0git
Classes | Namespaces
StmtOpenMP.h File Reference

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"

Go to the source code of this file.

Classes

class  clang::OMPCanonicalLoop
 Representation of an OpenMP canonical loop. More...
 
class  clang::OMPExecutableDirective
 This is a basic class for representing single OpenMP executable directive. More...
 
class  clang::OMPExecutableDirective::used_clauses_child_iterator
 Iterates over expressions/statements used in the construct. More...
 
class  clang::OMPExecutableDirective::specific_clause_iterator< SpecificClause >
 Iterates over a filtered subrange of clauses applied to a directive. More...
 
class  clang::OMPParallelDirective
 This represents '#pragma omp parallel' directive. More...
 
class  clang::OMPLoopBasedDirective
 The base class for all loop-based directives, including loop transformation directives. More...
 
struct  clang::OMPLoopBasedDirective::DistCombinedHelperExprs
 The expressions built to support OpenMP loops in combined/composite pragmas (e.g. More...
 
struct  clang::OMPLoopBasedDirective::HelperExprs
 The expressions built for the OpenMP loop CodeGen for the whole collapsed loop nest. More...
 
class  clang::OMPLoopTransformationDirective
 The base class for all loop transformation directives. More...
 
class  clang::OMPLoopDirective
 This is a common base class for loop directives ('omp simd', 'omp for', 'omp for simd' etc.). More...
 
class  clang::OMPSimdDirective
 This represents '#pragma omp simd' directive. More...
 
class  clang::OMPForDirective
 This represents '#pragma omp for' directive. More...
 
class  clang::OMPForSimdDirective
 This represents '#pragma omp for simd' directive. More...
 
class  clang::OMPSectionsDirective
 This represents '#pragma omp sections' directive. More...
 
class  clang::OMPSectionDirective
 This represents '#pragma omp section' directive. More...
 
class  clang::OMPScopeDirective
 This represents '#pragma omp scope' directive. More...
 
class  clang::OMPSingleDirective
 This represents '#pragma omp single' directive. More...
 
class  clang::OMPMasterDirective
 This represents '#pragma omp master' directive. More...
 
class  clang::OMPCriticalDirective
 This represents '#pragma omp critical' directive. More...
 
class  clang::OMPParallelForDirective
 This represents '#pragma omp parallel for' directive. More...
 
class  clang::OMPParallelForSimdDirective
 This represents '#pragma omp parallel for simd' directive. More...
 
class  clang::OMPParallelMasterDirective
 This represents '#pragma omp parallel master' directive. More...
 
class  clang::OMPParallelMaskedDirective
 This represents '#pragma omp parallel masked' directive. More...
 
class  clang::OMPParallelSectionsDirective
 This represents '#pragma omp parallel sections' directive. More...
 
class  clang::OMPTaskDirective
 This represents '#pragma omp task' directive. More...
 
class  clang::OMPTaskyieldDirective
 This represents '#pragma omp taskyield' directive. More...
 
class  clang::OMPBarrierDirective
 This represents '#pragma omp barrier' directive. More...
 
class  clang::OMPTaskwaitDirective
 This represents '#pragma omp taskwait' directive. More...
 
class  clang::OMPTaskgroupDirective
 This represents '#pragma omp taskgroup' directive. More...
 
class  clang::OMPFlushDirective
 This represents '#pragma omp flush' directive. More...
 
class  clang::OMPDepobjDirective
 This represents '#pragma omp depobj' directive. More...
 
class  clang::OMPOrderedDirective
 This represents '#pragma omp ordered' directive. More...
 
class  clang::OMPAtomicDirective
 This represents '#pragma omp atomic' directive. More...
 
struct  clang::OMPAtomicDirective::Expressions
 
class  clang::OMPTargetDirective
 This represents '#pragma omp target' directive. More...
 
class  clang::OMPTargetDataDirective
 This represents '#pragma omp target data' directive. More...
 
class  clang::OMPTargetEnterDataDirective
 This represents '#pragma omp target enter data' directive. More...
 
class  clang::OMPTargetExitDataDirective
 This represents '#pragma omp target exit data' directive. More...
 
class  clang::OMPTargetParallelDirective
 This represents '#pragma omp target parallel' directive. More...
 
class  clang::OMPTargetParallelForDirective
 This represents '#pragma omp target parallel for' directive. More...
 
class  clang::OMPTeamsDirective
 This represents '#pragma omp teams' directive. More...
 
class  clang::OMPCancellationPointDirective
 This represents '#pragma omp cancellation point' directive. More...
 
class  clang::OMPCancelDirective
 This represents '#pragma omp cancel' directive. More...
 
class  clang::OMPTaskLoopDirective
 This represents '#pragma omp taskloop' directive. More...
 
class  clang::OMPTaskLoopSimdDirective
 This represents '#pragma omp taskloop simd' directive. More...
 
class  clang::OMPMasterTaskLoopDirective
 This represents '#pragma omp master taskloop' directive. More...
 
class  clang::OMPMaskedTaskLoopDirective
 This represents '#pragma omp masked taskloop' directive. More...
 
class  clang::OMPMasterTaskLoopSimdDirective
 This represents '#pragma omp master taskloop simd' directive. More...
 
class  clang::OMPMaskedTaskLoopSimdDirective
 This represents '#pragma omp masked taskloop simd' directive. More...
 
class  clang::OMPParallelMasterTaskLoopDirective
 This represents '#pragma omp parallel master taskloop' directive. More...
 
class  clang::OMPParallelMaskedTaskLoopDirective
 This represents '#pragma omp parallel masked taskloop' directive. More...
 
class  clang::OMPParallelMasterTaskLoopSimdDirective
 This represents '#pragma omp parallel master taskloop simd' directive. More...
 
class  clang::OMPParallelMaskedTaskLoopSimdDirective
 This represents '#pragma omp parallel masked taskloop simd' directive. More...
 
class  clang::OMPDistributeDirective
 This represents '#pragma omp distribute' directive. More...
 
class  clang::OMPTargetUpdateDirective
 This represents '#pragma omp target update' directive. More...
 
class  clang::OMPDistributeParallelForDirective
 This represents '#pragma omp distribute parallel for' composite directive. More...
 
class  clang::OMPDistributeParallelForSimdDirective
 This represents '#pragma omp distribute parallel for simd' composite directive. More...
 
class  clang::OMPDistributeSimdDirective
 This represents '#pragma omp distribute simd' composite directive. More...
 
class  clang::OMPTargetParallelForSimdDirective
 This represents '#pragma omp target parallel for simd' directive. More...
 
class  clang::OMPTargetSimdDirective
 This represents '#pragma omp target simd' directive. More...
 
class  clang::OMPTeamsDistributeDirective
 This represents '#pragma omp teams distribute' directive. More...
 
class  clang::OMPTeamsDistributeSimdDirective
 This represents '#pragma omp teams distribute simd' combined directive. More...
 
class  clang::OMPTeamsDistributeParallelForSimdDirective
 This represents '#pragma omp teams distribute parallel for simd' composite directive. More...
 
class  clang::OMPTeamsDistributeParallelForDirective
 This represents '#pragma omp teams distribute parallel for' composite directive. More...
 
class  clang::OMPTargetTeamsDirective
 This represents '#pragma omp target teams' directive. More...
 
class  clang::OMPTargetTeamsDistributeDirective
 This represents '#pragma omp target teams distribute' combined directive. More...
 
class  clang::OMPTargetTeamsDistributeParallelForDirective
 This represents '#pragma omp target teams distribute parallel for' combined directive. More...
 
class  clang::OMPTargetTeamsDistributeParallelForSimdDirective
 This represents '#pragma omp target teams distribute parallel for simd' combined directive. More...
 
class  clang::OMPTargetTeamsDistributeSimdDirective
 This represents '#pragma omp target teams distribute simd' combined directive. More...
 
class  clang::OMPTileDirective
 This represents the '#pragma omp tile' loop transformation directive. More...
 
class  clang::OMPUnrollDirective
 This represents the '#pragma omp unroll' loop transformation directive. More...
 
class  clang::OMPScanDirective
 This represents '#pragma omp scan' directive. More...
 
class  clang::OMPInteropDirective
 This represents '#pragma omp interop' directive. More...
 
class  clang::OMPDispatchDirective
 This represents '#pragma omp dispatch' directive. More...
 
class  clang::OMPMaskedDirective
 This represents '#pragma omp masked' directive. More...
 
class  clang::OMPMetaDirective
 This represents '#pragma omp metadirective' directive. More...
 
class  clang::OMPGenericLoopDirective
 This represents '#pragma omp loop' directive. More...
 
class  clang::OMPTeamsGenericLoopDirective
 This represents '#pragma omp teams loop' directive. More...
 
class  clang::OMPTargetTeamsGenericLoopDirective
 This represents '#pragma omp target teams loop' directive. More...
 
class  clang::OMPParallelGenericLoopDirective
 This represents '#pragma omp parallel loop' directive. More...
 
class  clang::OMPTargetParallelGenericLoopDirective
 This represents '#pragma omp target parallel loop' directive. More...
 
class  clang::OMPErrorDirective
 This represents '#pragma omp error' directive. More...
 

Namespaces

namespace  clang
 The JSON file list parser is used to communicate input to InstallAPI.
 

Detailed Description

This file defines OpenMP AST classes for executable directives and clauses.

Definition in file StmtOpenMP.h.