9 #ifndef MLIR_DIALECT_GPU_PIPELINES_PASSES_H_
10 #define MLIR_DIALECT_GPU_PIPELINES_PASSES_H_
21 *
this,
"index-bitwidth",
22 llvm::cl::desc(
"Bitwidth of the index type for the host (warning this "
23 "should be 64 until the GPU layering is fixed)"),
26 *
this,
"cubin-triple",
27 llvm::cl::desc(
"Triple to use to serialize to cubin."),
28 llvm::cl::init(
"nvptx64-nvidia-cuda")};
30 *
this,
"cubin-chip", llvm::cl::desc(
"Chip to use to serialize to cubin."),
31 llvm::cl::init(
"sm_50")};
33 *
this,
"cubin-features",
34 llvm::cl::desc(
"Features to use to serialize to cubin."),
35 llvm::cl::init(
"+ptx60")};
37 *
this,
"cubin-format",
38 llvm::cl::desc(
"Compilation format to use to serialize to cubin."),
39 llvm::cl::init(
"fatbin")};
42 llvm::cl::desc(
"Optimization level for NVVM compilation"),
45 *
this,
"kernel-bare-ptr-calling-convention",
47 "Whether to use the bareptr calling convention on the kernel "
48 "(warning this should be false until the GPU layering is fixed)"),
49 llvm::cl::init(
false)};
51 *
this,
"host-bare-ptr-calling-convention",
53 "Whether to use the bareptr calling convention on the host (warning "
54 "this should be false until the GPU layering is fixed)"),
55 llvm::cl::init(
false)};
66 const GPUToNVVMPipelineOptions &
options);
static llvm::ManagedStatic< PassManagerOptions > options
This class represents a pass manager that runs passes on either a specific operation type,...
Subclasses of PassPipelineOptions provide a set of options that can be used to initialize a pass pipe...
void registerGPUToNVVMPipeline()
Register all pipeleines for the gpu dialect.
void buildLowerToNVVMPassPipeline(OpPassManager &pm, const GPUToNVVMPipelineOptions &options)
Adds the GPU to NVVM pipeline to the given pass manager.
Include the generated interface declarations.
Options for the gpu to nvvm pipeline.
PassOptions::Option< std::string > cubinChip
PassOptions::Option< int > optLevel
PassOptions::Option< bool > hostUseBarePtrCallConv
PassOptions::Option< std::string > cubinFeatures
PassOptions::Option< std::string > cubinFormat
PassOptions::Option< int64_t > indexBitWidth
PassOptions::Option< std::string > cubinTriple
PassOptions::Option< bool > kernelUseBarePtrCallConv