FLANG
OpWithBodyGenInfo Struct Reference

Public Types

using GenOMPRegionEntryCBFn

Public Member Functions

 OpWithBodyGenInfo (lower::AbstractConverter &converter, lower::SymMap &symTable, semantics::SemanticsContext &semaCtx, mlir::Location loc, lower::pft::Evaluation &eval, llvm::omp::Directive dir)
OpWithBodyGenInfosetClauses (const List< Clause > *value)
OpWithBodyGenInfosetDataSharingProcessor (DataSharingProcessor *value)
OpWithBodyGenInfosetEntryBlockArgs (const EntryBlockArgs *value)
OpWithBodyGenInfosetGenRegionEntryCb (GenOMPRegionEntryCBFn value)
OpWithBodyGenInfosetGenSkeletonOnly (bool value)
OpWithBodyGenInfosetPrivatize (bool value)

Public Attributes

lower::AbstractConverter & converter
 [inout] converter to use for the clauses.
lower::SymMap & symTable
 [in] Symbol table
semantics::SemanticsContextsemaCtx
 [in] Semantics context
mlir::Location loc
 [in] location in source code.
lower::pft::Evaluation & eval
 [in] current PFT node/evaluation.
llvm::omp::Directive dir
 [in] leaf directive for which to generate the op body.
const List< Clause > * clauses = nullptr
 [in] list of clauses to process.
DataSharingProcessordsp = nullptr
 [in] if provided, processes the construct's data-sharing attributes.
const EntryBlockArgsblockArgs = nullptr
GenOMPRegionEntryCBFn genRegionEntryCB = nullptr
bool genSkeletonOnly = false
bool privatize = true
 [in] enables handling of privatized variable unless set to false.

Member Typedef Documentation

◆ GenOMPRegionEntryCBFn

Initial value:
std::function<llvm::SmallVector<const semantics::Symbol *>(
mlir::Operation *)>

A type for a code-gen callback function. This takes as argument the op for which the code is being generated and returns the arguments of the op's region.

Member Data Documentation

◆ blockArgs

const EntryBlockArgs* OpWithBodyGenInfo::blockArgs = nullptr

[in] if provided, it is used to create the op's region entry block. It is overriden when a

See also
genRegionEntryCB is provided. This is only valid for operations implementing the
mlir::omp::BlockArgOpenMPOpInterface.

◆ genRegionEntryCB

GenOMPRegionEntryCBFn OpWithBodyGenInfo::genRegionEntryCB = nullptr

[in] if provided, it overrides the default op's region entry block creation.

◆ genSkeletonOnly

bool OpWithBodyGenInfo::genSkeletonOnly = false

[in] if set to true, skip generating nested evaluations and dispatching any further leaf constructs.


The documentation for this struct was generated from the following file: