Add support for the bare pointer calling convention in the gpu-to-llvm
pass. This wasn't being exposed and is needed when GPU-compiled MLIR is
to be called with this convention.
Reviewed By: krzysz00
Differential Revision: https://reviews.llvm.org/D152477
}];
let options = [
+ Option<"hostBarePtrCallConv", "use-bare-pointers-for-host", "bool",
+ /*default=*/"false",
+ "Use bare pointers to pass memref arguments to host functions. "
+ "All memrefs must have static shape.">,
Option<"kernelBarePtrCallConv", "use-bare-pointers-for-kernels", "bool",
/*default=*/"false",
"Use bare pointers to pass memref arguments to kernels. "
void GpuToLLVMConversionPass::runOnOperation() {
LowerToLLVMOptions options(&getContext());
options.useOpaquePointers = useOpaquePointers;
+ options.useBarePtrCallConv = hostBarePtrCallConv;
LLVMTypeConverter converter(&getContext(), options);
RewritePatternSet patterns(&getContext());