https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88019
Bug ID: 88019 Summary: [9 Regression] ICE in gimplify_modify_expr, at gimplify.c:5779 Product: gcc Version: 9.0 Status: UNCONFIRMED Keywords: ice-on-valid-code Severity: normal Priority: P3 Component: tree-optimization Assignee: unassigned at gcc dot gnu.org Reporter: marxin at gcc dot gnu.org Target Milestone: --- Following is causing ICE: $ gfortran /home/marxin/Programming/gcc/gcc/testsuite/gfortran.dg/pr68251.f90 -floop-nest-optimize -ftrapv -fno-tree-ch -O3 -fno-tree-ccp -fno-tree-forwprop during GIMPLE pass: graphite f951: internal compiler error: in gimplify_modify_expr, at gimplify.c:5779 0x64182e gimplify_modify_expr /home/marxin/Programming/gcc/gcc/gimplify.c:5778 0xb155fe gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*), int) /home/marxin/Programming/gcc/gcc/gimplify.c:12358 0xb1c0d6 gimplify_stmt(tree_node**, gimple**) /home/marxin/Programming/gcc/gcc/gimplify.c:6641 0xb2048f gimplify_cond_expr /home/marxin/Programming/gcc/gcc/gimplify.c:4111 0xb15622 gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*), int) /home/marxin/Programming/gcc/gcc/gimplify.c:12315 0xb1c0d6 gimplify_stmt(tree_node**, gimple**) /home/marxin/Programming/gcc/gcc/gimplify.c:6641 0xb1fe83 gimplify_cond_expr /home/marxin/Programming/gcc/gcc/gimplify.c:4008 0xb15622 gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*), int) /home/marxin/Programming/gcc/gcc/gimplify.c:12315 0xb1345f gimplify_expr(tree_node**, gimple**, gimple**, bool (*)(tree_node*), int) /home/marxin/Programming/gcc/gcc/gimplify.c:13089 0xb300bc force_gimple_operand_1(tree_node*, gimple**, bool (*)(tree_node*), tree_node*) /home/marxin/Programming/gcc/gcc/gimplify-me.c:78 0xb3016f 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 0x96c563 create_empty_if_region_on_edge(edge_def*, tree_node*) /home/marxin/Programming/gcc/gcc/cfgloopmanip.c:703 0x1582668 translate_isl_ast_to_gimple::translate_isl_ast_node_for(loop*, isl_ast_node*, edge_def*, std::map<isl_id*, tree_node*, std::less<isl_id*>, std::allocator<std::pair<isl_id* const, tree_node*> > >&) /home/marxin/Programming/gcc/gcc/graphite-isl-ast-to-gimple.c:745 0x1582956 translate_isl_ast_to_gimple::translate_isl_ast_node_if(loop*, isl_ast_node*, edge_def*, std::map<isl_id*, tree_node*, std::less<isl_id*>, std::allocator<std::pair<isl_id* const, tree_node*> > >&) /home/marxin/Programming/gcc/gcc/graphite-isl-ast-to-gimple.c:897 0x1582875 translate_isl_ast_to_gimple::translate_isl_ast_node_block(loop*, isl_ast_node*, edge_def*, std::map<isl_id*, tree_node*, std::less<isl_id*>, std::allocator<std::pair<isl_id* const, tree_node*> > >&) /home/marxin/Programming/gcc/gcc/graphite-isl-ast-to-gimple.c:859 0x15823d5 translate_isl_ast_to_gimple::translate_isl_ast_for_loop(loop*, isl_ast_node*, edge_def*, tree_node*, tree_node*, tree_node*, std::map<isl_id*, tree_node*, std::less<isl_id*>, std::allocator<std::pair<isl_id* const, tree_node*> > >&) /home/marxin/Programming/gcc/gcc/graphite-isl-ast-to-gimple.c:623 0x1582692 translate_isl_ast_to_gimple::translate_isl_ast_node_for(loop*, isl_ast_node*, edge_def*, std::map<isl_id*, tree_node*, std::less<isl_id*>, std::allocator<std::pair<isl_id* const, tree_node*> > >&) /home/marxin/Programming/gcc/gcc/graphite-isl-ast-to-gimple.c:751 0x1582875 translate_isl_ast_to_gimple::translate_isl_ast_node_block(loop*, isl_ast_node*, edge_def*, std::map<isl_id*, tree_node*, std::less<isl_id*>, std::allocator<std::pair<isl_id* const, tree_node*> > >&) /home/marxin/Programming/gcc/gcc/graphite-isl-ast-to-gimple.c:859 0x1582c64 graphite_regenerate_ast_isl(scop*) /home/marxin/Programming/gcc/gcc/graphite-isl-ast-to-gimple.c:1505 0x157f053 graphite_transform_loops() /home/marxin/Programming/gcc/gcc/graphite.c:413