|
MLIR 24.0.0git
|
This class wraps a concrete OpenACCSupport implementation and forwards interface calls to it. More...
#include "mlir/Dialect/OpenACC/Analysis/OpenACCSupport.h"
Public Member Functions | |
| Model (ImplT &&impl) | |
| ~Model () override=default | |
| std::string | getVariableName (Value v) final |
| Get the variable name for a given MLIR value. | |
| std::string | getRecipeName (RecipeKind kind, Type type, Value var) final |
| Get the recipe name for a given kind, type and value. | |
| InFlightDiagnostic | emitNYI (Location loc, const Twine &message) final |
| remark::detail::InFlightRemark | emitRemark (Operation *op, std::function< std::string()> messageFn, llvm::StringRef category) final |
| bool | isValidSymbolUse (Operation *user, SymbolRefAttr symbol, Operation **definingOpPtr) final |
| Check if a symbol use is valid for use in an OpenACC region. | |
| bool | isValidValueUse (Value v, Region ®ion) final |
| Check if a value use is legal in an OpenACC region. | |
| std::optional< gpu::GPUModuleOp > | getOrCreateGPUModule (ModuleOp mod, bool create, llvm::StringRef name) final |
| Get or optionally create a GPU module in the given module. | |
| std::optional< TypeSizeAndAlignment > | getTypeSizeAndAlignment (Type ty, ModuleOp module, OpenACCSupport &support) final |
Returns the size and ABI alignment in bytes for ty. | |
| Public Member Functions inherited from mlir::acc::detail::OpenACCSupportTraits::Concept | |
| virtual | ~Concept ()=default |
This class wraps a concrete OpenACCSupport implementation and forwards interface calls to it.
This provides type erasure, allowing different implementation types to be used interchangeably without inheritance. Methods can be optionally implemented; if not present, default behavior is used.
Definition at line 168 of file OpenACCSupport.h.
|
inlineexplicit |
Definition at line 170 of file OpenACCSupport.h.
|
overridedefault |
|
inlinefinalvirtual |
Implements mlir::acc::detail::OpenACCSupportTraits::Concept.
Definition at line 181 of file OpenACCSupport.h.
|
inlinefinalvirtual |
Implements mlir::acc::detail::OpenACCSupportTraits::Concept.
Definition at line 186 of file OpenACCSupport.h.
References mlir::acc::emitRemark().
|
inlinefinalvirtual |
Get or optionally create a GPU module in the given module.
Implements mlir::acc::detail::OpenACCSupportTraits::Concept.
Definition at line 210 of file OpenACCSupport.h.
References mlir::acc::getOrCreateGPUModule().
|
inlinefinalvirtual |
Get the recipe name for a given kind, type and value.
Implements mlir::acc::detail::OpenACCSupportTraits::Concept.
Definition at line 177 of file OpenACCSupport.h.
|
inlinefinalvirtual |
Returns the size and ABI alignment in bytes for ty.
Implements mlir::acc::detail::OpenACCSupportTraits::Concept.
Definition at line 219 of file OpenACCSupport.h.
References mlir::acc::getTypeSizeAndAlignment().
|
inlinefinalvirtual |
Get the variable name for a given MLIR value.
Implements mlir::acc::detail::OpenACCSupportTraits::Concept.
Definition at line 173 of file OpenACCSupport.h.
|
inlinefinalvirtual |
Check if a symbol use is valid for use in an OpenACC region.
Implements mlir::acc::detail::OpenACCSupportTraits::Concept.
Definition at line 194 of file OpenACCSupport.h.
References mlir::acc::isValidSymbolUse().
|
inlinefinalvirtual |
Check if a value use is legal in an OpenACC region.
Implements mlir::acc::detail::OpenACCSupportTraits::Concept.
Definition at line 202 of file OpenACCSupport.h.
References mlir::acc::isValidValueUse().