re PR ipa/92528 (ICE in ipa_get_parm_lattices since r278219)

2019-11-15  Feng Xue  <fxue@os.amperecomputing.com>

        PR ipa/92528
        * ipa-prop.c (update_jump_functions_after_inlining): Invalidate
        aggregate jump function when inlined-to caller has no edge summary.

From-SVN: r278300
This commit is contained in:
Feng Xue 2019-11-15 15:03:24 +00:00 committed by Feng Xue
parent 3ed8f69290
commit 1c3c3f4550
2 changed files with 13 additions and 6 deletions

View file

@ -1,3 +1,9 @@
2019-11-15 Feng Xue <fxue@os.amperecomputing.com>
PR ipa/92528
* ipa-prop.c (update_jump_functions_after_inlining): Invalidate
aggregate jump function when inlined-to caller has no edge summary.
2019-11-15 Kwok Cheung Yeung <kcy@codesourcery.com>
* config/gcn/gcn.c (gcn_init_cumulative_args): Call reinit_regs.

View file

@ -2923,11 +2923,6 @@ update_jump_functions_after_inlining (struct cgraph_edge *cs,
for (i = 0; i < count; i++)
{
struct ipa_jump_func *dst = ipa_get_ith_jump_func (args, i);
if (!top)
{
ipa_set_jf_unknown (dst);
continue;
}
class ipa_polymorphic_call_context *dst_ctx
= ipa_get_ith_polymorhic_call_context (args, i);
@ -2946,7 +2941,7 @@ update_jump_functions_after_inlining (struct cgraph_edge *cs,
continue;
dst_fid = item->value.pass_through.formal_id;
if (dst_fid >= ipa_get_cs_argument_count (top))
if (!top || dst_fid >= ipa_get_cs_argument_count (top))
{
item->jftype = IPA_JF_UNKNOWN;
continue;
@ -2997,6 +2992,12 @@ update_jump_functions_after_inlining (struct cgraph_edge *cs,
}
}
if (!top)
{
ipa_set_jf_unknown (dst);
continue;
}
if (dst->type == IPA_JF_ANCESTOR)
{
struct ipa_jump_func *src;