MLIR  20.0.0git
Public Attributes | List of all members
mlir::gpu::GPUToNVVMPipelineOptions Struct Reference

Options for the gpu to nvvm pipeline. More...

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

+ Inheritance diagram for mlir::gpu::GPUToNVVMPipelineOptions:

Public Attributes

PassOptions::Option< int64_t > indexBitWidth
 
PassOptions::Option< std::string > cubinTriple
 
PassOptions::Option< std::string > cubinChip
 
PassOptions::Option< std::string > cubinFeatures
 
PassOptions::Option< std::string > cubinFormat
 
PassOptions::Option< int > optLevel
 
PassOptions::Option< bool > kernelUseBarePtrCallConv
 
PassOptions::Option< bool > hostUseBarePtrCallConv
 

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< GPUToNVVMPipelineOptions >
static std::unique_ptr< GPUToNVVMPipelineOptions > createFromString (StringRef options)
 Factory that parses the provided options and returns a unique_ptr to the struct. More...
 

Detailed Description

Options for the gpu to nvvm pipeline.

Definition at line 18 of file Passes.h.

Member Data Documentation

◆ cubinChip

PassOptions::Option<std::string> mlir::gpu::GPUToNVVMPipelineOptions::cubinChip
Initial value:
{
*this, "cubin-chip", llvm::cl::desc("Chip to use to serialize to cubin."),
llvm::cl::init("sm_50")}

Definition at line 29 of file Passes.h.

◆ cubinFeatures

PassOptions::Option<std::string> mlir::gpu::GPUToNVVMPipelineOptions::cubinFeatures
Initial value:
{
*this, "cubin-features",
llvm::cl::desc("Features to use to serialize to cubin."),
llvm::cl::init("+ptx60")}

Definition at line 32 of file Passes.h.

◆ cubinFormat

PassOptions::Option<std::string> mlir::gpu::GPUToNVVMPipelineOptions::cubinFormat
Initial value:
{
*this, "cubin-format",
llvm::cl::desc("Compilation format to use to serialize to cubin."),
llvm::cl::init("fatbin")}

Definition at line 36 of file Passes.h.

◆ cubinTriple

PassOptions::Option<std::string> mlir::gpu::GPUToNVVMPipelineOptions::cubinTriple
Initial value:
{
*this, "cubin-triple",
llvm::cl::desc("Triple to use to serialize to cubin."),
llvm::cl::init("nvptx64-nvidia-cuda")}

Definition at line 25 of file Passes.h.

◆ hostUseBarePtrCallConv

PassOptions::Option<bool> mlir::gpu::GPUToNVVMPipelineOptions::hostUseBarePtrCallConv
Initial value:
{
*this, "host-bare-ptr-calling-convention",
llvm::cl::desc(
"Whether to use the bareptr calling convention on the host (warning "
"this should be false until the GPU layering is fixed)"),
llvm::cl::init(false)}

Definition at line 50 of file Passes.h.

◆ indexBitWidth

PassOptions::Option<int64_t> mlir::gpu::GPUToNVVMPipelineOptions::indexBitWidth
Initial value:
{
*this, "index-bitwidth",
llvm::cl::desc("Bitwidth of the index type for the host (warning this "
"should be 64 until the GPU layering is fixed)"),
llvm::cl::init(64)}

Definition at line 20 of file Passes.h.

◆ kernelUseBarePtrCallConv

PassOptions::Option<bool> mlir::gpu::GPUToNVVMPipelineOptions::kernelUseBarePtrCallConv
Initial value:
{
*this, "kernel-bare-ptr-calling-convention",
llvm::cl::desc(
"Whether to use the bareptr calling convention on the kernel "
"(warning this should be false until the GPU layering is fixed)"),
llvm::cl::init(false)}

Definition at line 44 of file Passes.h.

◆ optLevel

PassOptions::Option<int> mlir::gpu::GPUToNVVMPipelineOptions::optLevel
Initial value:
{
*this, "opt-level",
llvm::cl::desc("Optimization level for NVVM compilation"),
llvm::cl::init(2)}

Definition at line 40 of file Passes.h.


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