13 #ifndef MLIR_DIALECT_GPU_IR_COMPILATIONINTERFACES_H
14 #define MLIR_DIALECT_GPU_IR_COMPILATIONINTERFACES_H
25 class ModuleTranslation;
28 enum class CompilationTarget : uint32_t;
34 template <typename ConcreteType>
37 OffloadingTranslationAttrTrait> {
70 std::pair<llvm::BumpPtrAllocator, SmallVector<const char *>>
120 #include "mlir/Dialect/GPU/IR/CompilationAttrInterfaces.h.inc"
#define MLIR_DECLARE_EXPLICIT_TYPE_ID(CLASS_NAME)
This class allows for representing and managing the symbol table used by operations with the 'SymbolT...
This class provides an efficient unique identifier for a specific C++ type.
Helper class for implementing traits for storage classes.
This class indicates that the attribute associated with this trait is a GPU offloading translation at...
This class serves as an opaque interface for passing options to the TargetAttrInterface methods.
ArrayRef< std::string > getLinkFiles() const
Returns the files to link to.
TypeID getTypeID() const
Returns the typeID.
std::string toolkitPath
Path to the target toolkit.
SymbolTable * getSymbolTable() const
Returns the result of the getSymbolTableCallback callback or a nullptr if no callback was provided.
StringRef getCmdOptions() const
Returns the command line options.
std::string cmdOptions
An optional set of command line options to be used by the compilation process.
CompilationTarget compilationTarget
Compilation process target format.
std::pair< llvm::BumpPtrAllocator, SmallVector< const char * > > tokenizeCmdOptions() const
Returns a tokenization of the command line options.
StringRef getToolkitPath() const
Returns the toolkit path.
TargetOptions(StringRef toolkitPath={}, ArrayRef< std::string > linkFiles={}, StringRef cmdOptions={}, CompilationTarget compilationTarget=getDefaultCompilationTarget(), function_ref< SymbolTable *()> getSymbolTableCallback={})
Constructor initializing the toolkit path, the list of files to link to, extra command line options,...
SmallVector< std::string > linkFiles
List of files to link with the LLVM module.
function_ref< SymbolTable *()> getSymbolTableCallback
Callback for obtaining the parent symbol table of all the GPU modules being serialized.
static CompilationTarget getDefaultCompilationTarget()
Returns the default compilation target: CompilationTarget::Fatbin.
CompilationTarget getCompilationTarget() const
Returns the compilation target.
The OpAsmOpInterface, see OpAsmInterface.td for more details.
Include the generated interface declarations.