Closed dextorious closed 5 years ago
MWE:
julia> using CUDAnative
julia> foo() where {Q} = nothing
foo (generic function with 1 method)
julia> code_llvm(foo, Tuple{})
; Function foo
; Location: REPL[1]:1
define nonnull %jl_value_t addrspace(10)* @japi3_foo_35164(%jl_value_t addrspace(10)**, %jl_value_t addrspace(10)*, %jl_value_t addrspace(10)**, i32) #0 {
top:
%4 = alloca %jl_value_t addrspace(10)**, align 8
store volatile %jl_value_t addrspace(10)** %2, %jl_value_t addrspace(10)*** %4, align 8
ret %jl_value_t addrspace(10)* addrspacecast (%jl_value_t* inttoptr (i64 140671766708232 to %jl_value_t*) to %jl_value_t addrspace(10)*)
}
julia> foo()
julia> CUDAnative.code_llvm(foo, Tuple{})
ERROR: CUDAnative.jl encountered an unexpected internal compiler error.
Please file an issue attaching the following information, including the backtrace,
as well as a reproducible example (if possible).
InternalCompilerError: wrapper != nothing, at /home/tbesard/Julia/CUDAnative/src/compiler/irgen.jl:159
Still a bug though, the compiler should catch this :slightly_smiling_face:
When I run the following kernel (taken from a Lattice Boltzmann simulation)
I get the following error:
I'm not sure how to proceed with debugging this and was advised to post an issue here. The entire code, including a working CPU fallback, initialization and a wrapper for the GPU kernel is available in the following gist: https://gist.github.com/dextorious/e0a1d03a4fdfd29dc6cb5d58d84c53c1
Just running the file should automatically trigger the error.