MLIR 23.0.0git
mlir::omp Namespace Reference

Namespaces

namespace  impl

Classes

struct  DeclareTargetDefaultModel
struct  DeviceTypeClauseOps
struct  OffloadModuleDefaultModel

Typedefs

using HostEvaluatedOperands
 Clauses that correspond to operations other than omp.target, but might have to be evaluated outside of a parent target region.
using DeclareTargetOperands = detail::Clauses<DeviceTypeClauseOps>
using TargetEnterExitUpdateDataOperands = TargetEnterDataOperands
 omp.target_enter_data, omp.target_exit_data and omp.target_update take the same clauses, so we give the structure to be shared by all of them a representative name.

Functions

std::tuple< NewCliOp, OpOperand *, OpOperand * > decodeCli (mlir::Value cli)
 Find the omp.new_cli, generator, and consumer of a canonical loop info.
std::unique_ptr<::mlir::PasscreateMarkDeclareTargetPass ()
std::unique_ptr<::mlir::PasscreatePrepareForOMPOffloadPrivatizationPass ()
void registerMarkDeclareTargetPass ()
void registerMarkDeclareTargetPassPass ()
void registerPrepareForOMPOffloadPrivatizationPass ()
void registerPrepareForOMPOffloadPrivatizationPassPass ()
void registerOpenMPPasses ()

Typedef Documentation

◆ DeclareTargetOperands

Definition at line 47 of file OpenMPClauseOperands.h.

◆ HostEvaluatedOperands

Initial value:
detail::Clauses<CollapseClauseOps, LoopRelatedClauseOps, NumTeamsClauseOps,
NumThreadsClauseOps, ThreadLimitClauseOps>

Clauses that correspond to operations other than omp.target, but might have to be evaluated outside of a parent target region.

Definition at line 42 of file OpenMPClauseOperands.h.

◆ TargetEnterExitUpdateDataOperands

using mlir::omp::TargetEnterExitUpdateDataOperands = TargetEnterDataOperands

omp.target_enter_data, omp.target_exit_data and omp.target_update take the same clauses, so we give the structure to be shared by all of them a representative name.

Definition at line 52 of file OpenMPClauseOperands.h.

Function Documentation

◆ createMarkDeclareTargetPass()

std::unique_ptr<::mlir::Pass > mlir::omp::createMarkDeclareTargetPass ( )

We declare an explicit private instantiation because Pass classes should only be visible by the current library.

Definition at line 80 of file MarkDeclareTarget.cpp.

◆ createPrepareForOMPOffloadPrivatizationPass()

std::unique_ptr<::mlir::Pass > mlir::omp::createPrepareForOMPOffloadPrivatizationPass ( )

We declare an explicit private instantiation because Pass classes should only be visible by the current library.

Definition at line 155 of file OpenMPOffloadPrivatizationPrepare.cpp.

References mlir::Operation::user_begin(), and mlir::Operation::user_end().

◆ decodeCli()

std::tuple< NewCliOp, OpOperand *, OpOperand * > mlir::omp::decodeCli ( mlir::Value cli)

Find the omp.new_cli, generator, and consumer of a canonical loop info.

Definition at line 3450 of file OpenMPDialect.cpp.

References mlir::Value::getContext(), mlir::Value::getDefiningOp(), mlir::Value::getType(), and mlir::Value::getUses().

Referenced by checkApplyeesNesting().

◆ registerMarkDeclareTargetPass()

void mlir::omp::registerMarkDeclareTargetPass ( )
inline

Definition at line 171 of file Passes.h.

◆ registerMarkDeclareTargetPassPass()

void mlir::omp::registerMarkDeclareTargetPassPass ( )
inline

Definition at line 178 of file Passes.h.

◆ registerOpenMPPasses()

void mlir::omp::registerOpenMPPasses ( )
inline

Definition at line 213 of file Passes.h.

Referenced by mlir::registerAllPasses().

◆ registerPrepareForOMPOffloadPrivatizationPass()

void mlir::omp::registerPrepareForOMPOffloadPrivatizationPass ( )
inline

Definition at line 192 of file Passes.h.

◆ registerPrepareForOMPOffloadPrivatizationPassPass()

void mlir::omp::registerPrepareForOMPOffloadPrivatizationPassPass ( )
inline

Definition at line 199 of file Passes.h.