blob: 19dbdc94b6d92bbb8bb5a1d55954c0f129347867 [file] [edit]
// RUN: mlir-opt %s --gpu-to-llvm="use-bare-pointers-for-kernels=1" -split-input-file -verify-diagnostics
// Test that gpu.launch_func with an unranked memref kernel argument fails
// gracefully (no crash) when using the bare-pointer calling convention.
// See issue #184939.
module attributes {gpu.container_module} {
gpu.module @kernels {
gpu.func @kernel(%arg0: memref<*xi32>) kernel {
gpu.return
}
}
func.func @main(%arg: memref<*xi32>) {
%c1 = arith.constant 1 : index
%c0 = arith.constant 0 : i32
// expected-error@+1 {{failed to legalize operation 'gpu.launch_func'}}
gpu.launch_func @kernels::@kernel
blocks in (%c1, %c1, %c1) threads in (%c1, %c1, %c1)
dynamic_shared_memory_size %c0
args(%arg : memref<*xi32>)
return
}
}