MLIR  22.0.0git
Public Attributes | List of all members
mlir::gpu::GPUToXeVMPipelineOptions Struct Reference

#include "mlir/Dialect/GPU/Pipelines/Passes.h"

+ Inheritance diagram for mlir::gpu::GPUToXeVMPipelineOptions:

Public Attributes

PassOptions::Option< std::string > xegpuOpLevel
 
PassOptions::Option< bool > use64bitIndex
 
PassOptions::Option< bool > kernelBarePtrCallConv
 
PassOptions::Option< bool > hostBarePtrCallConv
 
PassOptions::Option< std::string > binaryFormat
 
PassOptions::Option< std::string > xevmModuleMatcher
 
PassOptions::Option< std::string > zebinTriple
 
PassOptions::Option< std::string > zebinChip
 
PassOptions::Option< unsigned > optLevel
 
PassOptions::Option< std::string > cmdOptions
 

Additional Inherited Members

- Public Types inherited from mlir::detail::PassOptions
template<typename DataType >
using OptionParser = std::conditional_t< std::is_base_of_v< PassOptions, DataType >, PassOptionsParser< DataType >, std::conditional_t< std::is_base_of< llvm::cl::generic_parser_base, llvm::cl::parser< DataType > >::value, GenericOptionParser< DataType >, llvm::cl::parser< DataType > >>
 The specific parser to use. More...
 
- Public Member Functions inherited from mlir::detail::PassOptions
 PassOptions ()=default
 
 PassOptions (const PassOptions &)=delete
 Delete the copy constructor to avoid copying the internal options map. More...
 
 PassOptions (PassOptions &&)=delete
 
void copyOptionValuesFrom (const PassOptions &other)
 Copy the option values from 'other' into 'this', where 'other' has the same options as 'this'. More...
 
LogicalResult parseFromString (StringRef options, raw_ostream &errorStream=llvm::errs())
 Parse options out as key=value pairs that can then be handed off to the llvm::cl command line passing infrastructure. More...
 
void print (raw_ostream &os) const
 Print the options held by this struct in a form that can be parsed via 'parseFromString'. More...
 
void printHelp (size_t indent, size_t descIndent) const
 Print the help string for the options held by this struct. More...
 
size_t getOptionWidth () const
 Return the maximum width required when printing the help string. More...
 
- Static Public Member Functions inherited from mlir::PassPipelineOptions< GPUToXeVMPipelineOptions >
static std::unique_ptr< GPUToXeVMPipelineOptions > createFromString (StringRef options)
 Factory that parses the provided options and returns a unique_ptr to the struct. More...
 

Detailed Description

Definition at line 64 of file Passes.h.

Member Data Documentation

◆ binaryFormat

PassOptions::Option<std::string> mlir::gpu::GPUToXeVMPipelineOptions::binaryFormat
Initial value:
{
*this, "binary-format",
llvm::cl::desc("Final GPU binary emission format (e.g. fatbin)"),
llvm::cl::init("fatbin")}

Definition at line 84 of file Passes.h.

◆ cmdOptions

PassOptions::Option<std::string> mlir::gpu::GPUToXeVMPipelineOptions::cmdOptions
Initial value:
{
*this, "igc-cmd-options",
llvm::cl::desc("Additional downstream compiler command line options"),
llvm::cl::init("")}

Definition at line 103 of file Passes.h.

◆ hostBarePtrCallConv

PassOptions::Option<bool> mlir::gpu::GPUToXeVMPipelineOptions::hostBarePtrCallConv
Initial value:
{
*this, "host-bare-ptr-calling-convention",
llvm::cl::desc("Use bare pointer calling convention for host launches"),
llvm::cl::init(false)}

Definition at line 80 of file Passes.h.

◆ kernelBarePtrCallConv

PassOptions::Option<bool> mlir::gpu::GPUToXeVMPipelineOptions::kernelBarePtrCallConv
Initial value:
{
*this, "kernel-bare-ptr-calling-convention",
llvm::cl::desc("Use bare pointer calling convention for device kernels"),
llvm::cl::init(false)}

Definition at line 76 of file Passes.h.

◆ optLevel

PassOptions::Option<unsigned> mlir::gpu::GPUToXeVMPipelineOptions::optLevel
Initial value:
{
*this, "opt-level",
llvm::cl::desc("Optimization level for attached target/codegen"),
llvm::cl::init(2)}

Definition at line 99 of file Passes.h.

◆ use64bitIndex

PassOptions::Option<bool> mlir::gpu::GPUToXeVMPipelineOptions::use64bitIndex
Initial value:
{
*this, "use-64bit-index",
llvm::cl::desc("Bitwidth of the index type (host & device)"),
llvm::cl::init(true)}

Definition at line 72 of file Passes.h.

◆ xegpuOpLevel

PassOptions::Option<std::string> mlir::gpu::GPUToXeVMPipelineOptions::xegpuOpLevel
Initial value:
{
*this, "xegpu-op-level",
llvm::cl::desc("Granularity of XeGPU operations to target: workgroup | "
"subgroup | lane"),
llvm::cl::init("workgroup")}

Definition at line 66 of file Passes.h.

◆ xevmModuleMatcher

PassOptions::Option<std::string> mlir::gpu::GPUToXeVMPipelineOptions::xevmModuleMatcher
Initial value:
{
*this, "xevm-module-matcher",
llvm::cl::desc("Regex to match gpu.module names for XeVM target attach"),
llvm::cl::init("")}

Definition at line 89 of file Passes.h.

◆ zebinChip

PassOptions::Option<std::string> mlir::gpu::GPUToXeVMPipelineOptions::zebinChip
Initial value:
{
*this, "zebin-chip", llvm::cl::desc("Target chip (e.g. pvc, bmg)"),
llvm::cl::init("bmg")}

Definition at line 96 of file Passes.h.

◆ zebinTriple

PassOptions::Option<std::string> mlir::gpu::GPUToXeVMPipelineOptions::zebinTriple
Initial value:
{
*this, "zebin-triple", llvm::cl::desc("Target triple for XeVM codegen"),
llvm::cl::init("spirv64-unknown-unknown")}

Definition at line 93 of file Passes.h.


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