https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91853

            Bug ID: 91853
           Summary: [10 Regression] ICE in gimplify_modify_expr, at
                    gimplify.c:5902 since r275982
           Product: gcc
           Version: 9.0
            Status: UNCONFIRMED
          Keywords: ice-on-valid-code
          Severity: normal
          Priority: P3
         Component: ipa
          Assignee: unassigned at gcc dot gnu.org
          Reporter: marxin at gcc dot gnu.org
                CC: jamborm at gcc dot gnu.org, marxin at gcc dot gnu.org
  Target Milestone: ---

Following is causing ICE:

$ gcc /home/marxin/Programming/gcc/gcc/testsuite/gcc.dg/pr60647-1.c --param
ipa-cp-value-list-size=0 -Os -fno-inline
during IPA pass: inline
In function ‘fn3.constprop.isra’:
cc1: internal compiler error: in gimplify_modify_expr, at gimplify.c:5902
0x655a38 gimplify_modify_expr
        /home/marxin/Programming/gcc/gcc/gimplify.c:5902
0xb1d1f8 gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
        /home/marxin/Programming/gcc/gcc/gimplify.c:13136
0xb20cf6 gimplify_stmt(tree_node**, gimple**)
        /home/marxin/Programming/gcc/gcc/gimplify.c:6780
0xb2337f gimplify_and_add(tree_node*, gimple**)
        /home/marxin/Programming/gcc/gcc/gimplify.c:480
0xb2337f internal_get_tmp_var
        /home/marxin/Programming/gcc/gcc/gimplify.c:636
0xb2363a get_initialized_tmp_var(tree_node*, gimple**, gimple**, bool)
        /home/marxin/Programming/gcc/gcc/gimplify.c:667
0xb2363a prepare_gimple_addressable
        /home/marxin/Programming/gcc/gcc/gimplify.c:4278
0xb25a0b gimplify_addr_expr
        /home/marxin/Programming/gcc/gcc/gimplify.c:6144
0xb1df2a gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
        /home/marxin/Programming/gcc/gcc/gimplify.c:13183
0xb3bf9d force_gimple_operand_1(tree_node*, gimple**, bool (*)(tree_node*),
tree_node*)
        /home/marxin/Programming/gcc/gcc/gimplify-me.c:78
0xb3c04f force_gimple_operand_gsi_1(gimple_stmt_iterator*, tree_node*, bool
(*)(tree_node*), tree_node*, bool, gsi_iterator_update)
        /home/marxin/Programming/gcc/gcc/gimplify-me.c:115
0xbd42a4 ipa_param_adjustments::modify_call(gcall*,
vec<ipa_param_performed_split, va_gc, vl_embed>*, tree_node*, bool)
        /home/marxin/Programming/gcc/gcc/ipa-param-manipulation.c:724
0x983814 cgraph_edge::redirect_call_stmt_to_callee()
        /home/marxin/Programming/gcc/gcc/cgraph.c:1380
0x16bf764 inline_transform(cgraph_node*)
        /home/marxin/Programming/gcc/gcc/ipa-inline-transform.c:684
0xcdfd9a execute_one_ipa_transform_pass
        /home/marxin/Programming/gcc/gcc/passes.c:2231
0xcdfd9a execute_all_ipa_transforms(bool)
        /home/marxin/Programming/gcc/gcc/passes.c:2270
0x98c431 cgraph_node::expand()
        /home/marxin/Programming/gcc/gcc/cgraphunit.c:2187
0x98d40b expand_all_functions
        /home/marxin/Programming/gcc/gcc/cgraphunit.c:2332
0x98d40b symbol_table::compile()
        /home/marxin/Programming/gcc/gcc/cgraphunit.c:2688
0x98fc4c symbol_table::compile()
        /home/marxin/Programming/gcc/gcc/cgraphunit.c:2595
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <https://gcc.gnu.org/bugs/> for instructions.

Similarly here:
$ gcc /home/marxin/Programming/gcc/gcc/testsuite/gcc.dg/pr60647-2.c -fipa-sra
-Og
/home/marxin/Programming/gcc/gcc/testsuite/gcc.dg/pr60647-2.c: In function
‘bar’:
/home/marxin/Programming/gcc/gcc/testsuite/gcc.dg/pr60647-2.c:21:4: warning:
function called through a non-compatible type
   21 |   ((void (*) (void *, int, int)) foo) ((void *) 0, winInfo, 0);  /* {
dg-warning "function called through a non-compatible type" } */
      |   ~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
during IPA pass: inline
In function ‘bar.isra’:
cc1: internal compiler error: in gimplify_modify_expr, at gimplify.c:5902
0x655a38 gimplify_modify_expr
        /home/marxin/Programming/gcc/gcc/gimplify.c:5902
0xb1d1f8 gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
        /home/marxin/Programming/gcc/gcc/gimplify.c:13136
0xb20cf6 gimplify_stmt(tree_node**, gimple**)
        /home/marxin/Programming/gcc/gcc/gimplify.c:6780
0xb2337f gimplify_and_add(tree_node*, gimple**)
        /home/marxin/Programming/gcc/gcc/gimplify.c:480
0xb2337f internal_get_tmp_var
        /home/marxin/Programming/gcc/gcc/gimplify.c:636
0xb2363a get_initialized_tmp_var(tree_node*, gimple**, gimple**, bool)
        /home/marxin/Programming/gcc/gcc/gimplify.c:667
0xb2363a prepare_gimple_addressable
        /home/marxin/Programming/gcc/gcc/gimplify.c:4278
0xb25a0b gimplify_addr_expr
        /home/marxin/Programming/gcc/gcc/gimplify.c:6144
0xb1df2a gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*),
int)
        /home/marxin/Programming/gcc/gcc/gimplify.c:13183
0xb3bf9d force_gimple_operand_1(tree_node*, gimple**, bool (*)(tree_node*),
tree_node*)
        /home/marxin/Programming/gcc/gcc/gimplify-me.c:78
0xb3c04f force_gimple_operand_gsi_1(gimple_stmt_iterator*, tree_node*, bool
(*)(tree_node*), tree_node*, bool, gsi_iterator_update)
        /home/marxin/Programming/gcc/gcc/gimplify-me.c:115
0xbd42a4 ipa_param_adjustments::modify_call(gcall*,
vec<ipa_param_performed_split, va_gc, vl_embed>*, tree_node*, bool)
        /home/marxin/Programming/gcc/gcc/ipa-param-manipulation.c:724
0x983814 cgraph_edge::redirect_call_stmt_to_callee()
        /home/marxin/Programming/gcc/gcc/cgraph.c:1380
0x16bf764 inline_transform(cgraph_node*)
        /home/marxin/Programming/gcc/gcc/ipa-inline-transform.c:684
0xcdfd9a execute_one_ipa_transform_pass
        /home/marxin/Programming/gcc/gcc/passes.c:2231
0xcdfd9a execute_all_ipa_transforms(bool)
        /home/marxin/Programming/gcc/gcc/passes.c:2270
0x98c431 cgraph_node::expand()
        /home/marxin/Programming/gcc/gcc/cgraphunit.c:2187
0x98d40b expand_all_functions
        /home/marxin/Programming/gcc/gcc/cgraphunit.c:2332
0x98d40b symbol_table::compile()
        /home/marxin/Programming/gcc/gcc/cgraphunit.c:2688
0x98fc4c symbol_table::compile()
        /home/marxin/Programming/gcc/gcc/cgraphunit.c:2595

Reply via email to