http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58388
Martin Jambor <jamborm at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |jamborm at gcc dot gnu.org
--- Comment #3 from Martin Jambor <jamborm at gcc dot gnu.org> ---
(In reply to Jan Hubicka from comment #2)
> Martin,
> I think the problem is just the assert itself:
> gcc_checking_assert (cs->callee
> && (jfunc->type != IPA_JF_CONST
> || !cgraph_node_for_jfunc (jfunc)
> || cs->callee == cgraph_node_for_jfunc
> (jfunc)));
>
> Since have possibly resolved speculation, cs->callee may point to a clone
> (either ipa-cp or inline created). Shall we just drop the test or weaken it
> if the edge was previously speculative?
It took me some time to reproduce this in a way that would give me
enough debug info to look at stuff. Nevertheless, indeed that is the
case, cs->callee is an inline clone. I'll add (cs != ie) to the
disjunctions in the assert.