Hi, On Wed, Oct 30 2019, Jan Hubicka wrote: > Hi, > this patch fixes another place we may have missing argument summary. > Here the situation is that the call site being inlined has no jump > functions while function which is being inlines has another call with > jump function. This can validly happen when we inline into functions > with indirect inlining and ipa-cp disabled but I am not 100% why it > happens i.e. during Firefox builds. Martin, do you have any ideas?
No, not without seeing what is going on. I think we compute jump functions also when we are inlining and IPA-CP is disabled, by the way. It looks like ipa_compute_jump_functions_for_edge was never called on that edge, so if the problem appeared in a non-LTO context the following might help? And I assume we want it either way, so OK for trunk after a bootstrap&testing? Martin diff --git a/gcc/ipa-prop.c b/gcc/ipa-prop.c index 0dd73561419..10fe1bc929f 100644 --- a/gcc/ipa-prop.c +++ b/gcc/ipa-prop.c @@ -2040,7 +2040,7 @@ ipa_compute_jump_functions_for_bb (struct ipa_func_body_info *fbi, basic_block b if (callee) { - callee->ultimate_alias_target (); + callee = callee->ultimate_alias_target (); /* We do not need to bother analyzing calls to unknown functions unless they may become known during lto/whopr. */ if (!callee->definition && !flag_lto)