Mjolnir.jl
Mjolnir.jl copied to clipboard
Missing Key
julia> function f(x)
if x > 0
k = 0
while k < 10
k += 1
x = x * 4
end
else
j = 0
while j < 5
j += 1
x = x + 4
end
end
x
end
f (generic function with 1 method)
julia> @trace f(::Int)
ERROR: Tracing Error: KeyError: key %58 not found
Stacktrace:
[1] trace(::Any, ::Any, ::Vararg{Any,N} where N) at /home/zenna/.julia/packages/Mjolnir/7FUVN/src/trace.jl:268
[2] top-level scope at REPL[29]:1
caused by [exception 1]
KeyError: key %58 not found
Stacktrace:
[1] getindex at ./dict.jl:467 [inlined]
[2] substitute at /home/zenna/.julia/packages/IRTools/GVPoj/src/ir/ir.jl:853 [inlined]
[3] _broadcast_getindex_evalf(::typeof(IRTools.Inner.substitute), ::IRTools.Inner.Pipe, ::IRTools.Inner.Variable) at ./broadcast.jl:648
[4] _broadcast_getindex(::Base.Broadcast.Broadcasted{Base.Broadcast.DefaultArrayStyle{1},Tuple{Base.OneTo{Int64}},typeof(IRTools.Inner.substitute),Tuple{Tuple{IRTools.Inner.Pipe},Base.Broadcast.Extruded{Array{Any,1},Tuple{Bool},Tuple{Int64}}}}, ::Int64) at ./broadcast.jl:621
[5] getindex at ./broadcast.jl:575 [inlined]
[6] copyto_nonleaf!(::Array{typeof(<),1}, ::Base.Broadcast.Broadcasted{Base.Broadcast.DefaultArrayStyle{1},Tuple{Base.OneTo{Int64}},typeof(IRTools.Inner.substitute),Tuple{Tuple{IRTools.Inner.Pipe},Base.Broadcast.Extruded{Array{Any,1},Tuple{Bool},Tuple{Int64}}}}, ::Base.OneTo{Int64}, ::Int64, ::Int64) at ./broadcast.jl:1026
[7] copy(::Base.Broadcast.Broadcasted{Base.Broadcast.DefaultArrayStyle{1},Tuple{Base.OneTo{Int64}},typeof(IRTools.Inner.substitute),Tuple{Tuple{IRTools.Inner.Pipe},Array{Any,1}}}) at ./broadcast.jl:880
[8] materialize(::Base.Broadcast.Broadcasted{Base.Broadcast.DefaultArrayStyle{1},Nothing,typeof(IRTools.Inner.substitute),Tuple{Tuple{IRTools.Inner.Pipe},Array{Any,1}}}) at ./broadcast.jl:837
[9] substitute(::IRTools.Inner.Pipe, ::Expr) at /home/zenna/.julia/packages/IRTools/GVPoj/src/ir/ir.jl:856
[10] substitute(::IRTools.Inner.Pipe, ::IRTools.Inner.Statement) at /home/zenna/.julia/packages/IRTools/GVPoj/src/ir/ir.jl:855
[11] iterate(::IRTools.Inner.Pipe, ::Any) at /home/zenna/.julia/packages/IRTools/GVPoj/src/ir/ir.jl:892
[12] iterate(::IRTools.Inner.Pipe, ::Any) at /home/zenna/.julia/packages/IRTools/GVPoj/src/ir/ir.jl:888
[13] renumber(::Any) at /home/zenna/.julia/packages/IRTools/GVPoj/src/passes/passes.jl:124
[14] |> at ./operators.jl:834 [inlined]
[15] cleanup!(::Any) at /home/zenna/.julia/packages/Mjolnir/7FUVN/src/cleanup.jl:91
[16] trace(::Any, ::Any, ::Vararg{Any,N} where N) at /home/zenna/.julia/packages/Mjolnir/7FUVN/src/trace.jl:266
[17] top-level scope at REPL[29]:1