Valentin Churavy
Valentin Churavy
No that is currently not possible. #172 is the issue to follow, but we are not targeting ChainRules support from the get-go, but rather allowing the user to provide rules...
In particular: ``` Instruction does not dominate all uses! %168 = call token (...) @llvm.julia.gc_preserve_begin({} addrspace(10)* %.fca.0.extract, {} addrspace(10)* %".fca.0.extract'ipev", {} addrspace(10)* %1, {} addrspace(10)* %"'1") call void @llvm.julia.gc_preserve_end(token %168)...
``` WARNING: Method definition invsin(Any) in module Main at /home/runner/work/Enzyme.jl/Enzyme.jl/test/runtests.jl:515 overwritten at /home/runner/work/Enzyme.jl/Enzyme.jl/test/runtests.jl:1137. generic: Error During Test at /home/runner/work/Enzyme.jl/Enzyme.jl/test/runtests.jl:1142 Got exception outside of a @test StackOverflowError: Stacktrace: [1] runtime_generic_augfwd(::Type{Val{(false, false,...
``` using Enzyme using LinearAlgebra function whocallsmorethan30args(R) temp = diag(R) R_inv = [temp[1] 0. 0. 0. 0. 0.; 0. temp[2] 0. 0. 0. 0.; 0. 0. temp[3] 0. 0. 0.;...
Hm can't reproduce locally. It was crashing on 1.10-beta, but is passing for me on rc1.
Even trying to directly reconstruct the call: ``` Enzyme.Compiler.runtime_generic_augfwd( Val{(false, false, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true,...
So after a short investigation. The code behaves properly outside the test-suite. It is not clear why this recurses to begin with.
> t looks like in get_function_name of codegen.cpp, the specsig flag, which should be set to true by gpucompiler is getting ignored or overridden or something Can you expand on...
So the culprit is that we are not handling the `invoke` correctly that was added in https://github.com/JuliaSparse/SparseArrays.jl/commit/c402d09cf05492179fad2def5632e354a81f5b30 ``` hvcat(rows::Tuple{Vararg{Int}}, n1::Number, ns::Vararg{Number}) = invoke(hvcat, Tuple{typeof(rows), Vararg{Number}}, rows, n1, ns...) hvcat(rows::Tuple{Vararg{Int}}, n1::N,...
Can you look at https://github.com/JuliaGPU/GPUCompiler.jl/blob/21ca075c1e91fe0c15f1330ab487b4831013ec1f/src/jlgen.jl#L175 after the compilation?