Skip to content

Commit

Permalink
Update base/compiler/abstractinterpretation.jl
Browse files Browse the repository at this point in the history
  • Loading branch information
aviatesk committed Jun 29, 2021
1 parent b3f9e75 commit 3fbb6f0
Showing 1 changed file with 2 additions and 1 deletion.
3 changes: 2 additions & 1 deletion base/compiler/abstractinterpretation.jl
Original file line number Diff line number Diff line change
Expand Up @@ -1157,7 +1157,8 @@ function abstract_invoke(interp::AbstractInterpreter, argtypes::Vector{Any}, sv:
(; rt, edge) = result = abstract_call_method(interp, method, ti, env, false, sv)
edge !== nothing && add_backedge!(edge::MethodInstance, sv)
match = MethodMatch(ti, env, method, argtype <: method.sig)
# try constant propagation with early take-in of the heuristics -- since constuctions below seem to be a bit costly
# try constant propagation with manual inlinings of some of the heuristics
# since some checks within `abstract_call_method_with_const_args` seem a bit costly
const_prop_entry_heuristic(interp, result, sv) || return CallMeta(rt, InvokeCallInfo(match, nothing))
argtypes′ = argtypes[4:end]
const_prop_argument_heuristic(interp, argtypes′) || const_prop_rettype_heuristic(interp, rt) || return CallMeta(rt, InvokeCallInfo(match, nothing))
Expand Down

0 comments on commit 3fbb6f0

Please sign in to comment.