Skip to content

Commit 32bee7b

Browse files
committed
add missing edges to invoke Expr
1 parent 0490a9e commit 32bee7b

File tree

1 file changed

+2
-0
lines changed

1 file changed

+2
-0
lines changed

base/inference.jl

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2575,6 +2575,7 @@ function inlineable(f::ANY, ft::ANY, e::Expr, atypes::Vector{Any}, sv::Inference
25752575
local sig = argtypes_to_type(atypes)
25762576
local li = ccall(:jl_get_spec_lambda, Any, (Any, UInt), sig, sv.world)
25772577
li === nothing && return false
2578+
add_backedge(li, sv)
25782579
local stmt = []
25792580
push!(stmt, Expr(:(=), linfo_var, li))
25802581
spec_hit === nothing && (spec_hit = genlabel(sv))
@@ -2642,6 +2643,7 @@ function inlineable(f::ANY, ft::ANY, e::Expr, atypes::Vector{Any}, sv::Inference
26422643
else
26432644
local cache_linfo = ccall(:jl_get_spec_lambda, Any, (Any, UInt), atype_unlimited, sv.world)
26442645
cache_linfo === nothing && return NF
2646+
add_backedge(cache_linfo, sv)
26452647
e.head = :invoke
26462648
unshift!(e.args, cache_linfo)
26472649
return e

0 commit comments

Comments
 (0)