Watch for missing summaries even more

Richard Biener richard.guenther@gmail.com
Wed Oct 30 14:07:00 GMT 2019


On Wed, Oct 30, 2019 at 1:06 PM Martin Jambor <mjambor@suse.cz> wrote:
>
> 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 ();

so that either was dead code or your fix is obvious ;)

So - OK.

Thanks,
Richard.

>           /* We do not need to bother analyzing calls to unknown functions
>              unless they may become known during lto/whopr.  */
>           if (!callee->definition && !flag_lto)
>



More information about the Gcc-patches mailing list