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

            Bug ID: 89439
           Summary: [7/8/9 Regression] ICE in make_ssa_name_fn, at
                    tree-ssanames.c:268
           Product: gcc
           Version: 9.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c
          Assignee: unassigned at gcc dot gnu.org
          Reporter: gs...@t-online.de
  Target Milestone: ---

Feeding g++ with testsuite/gcc.c-torture/compile/pr84305.c
affects versions since g++-7 at -O1+ :


$ cat pr84305.c
int res, a, b;
void *foo;
static void f2 (int arg) { res = ((int (*)[arg][b]) foo)[0][0][0]; }
void f1 (void) { f2 (a); }


$ gcc-9-20190217 -c pr84305.c -O2
$
$ g++-6          -c pr84305.c -O2
$
$ g++-9-20190217 -c pr84305.c -O0
$
$ g++-9-20190217 -c pr84305.c -O2
during GIMPLE pass: eipa_sra
pr84305.c: In function 'void _ZL2f2i.isra.0(int)':
pr84305.c:4:26: internal compiler error: Segmentation fault
    4 | void f1 (void) { f2 (a); }
      |                          ^
0xe32b7f crash_signal
        ../../gcc/toplev.c:326
0x1076397 make_ssa_name_fn(function*, tree_node*, gimple*, unsigned int)
        ../../gcc/tree-ssanames.c:268
0xebb95e make_ssa_name
        ../../gcc/tree-ssanames.h:114
0xebb95e remap_ssa_name
        ../../gcc/tree-inline.c:245
0xec2c17 copy_tree_body_r(tree_node**, int*, void*)
        ../../gcc/tree-inline.c:1134
0x112d5f3 walk_tree_1(tree_node**, tree_node* (*)(tree_node**, int*, void*),
void*, hash_set<tree_node*, default_hash_traits<tree_node*> >*, tree_node*
(*)(tree_node**, int*, tree_node* (*)(tree_node**, int*, void*), void*,
hash_set<tree_node*, default_hash_traits<tree_node*> >*))
        ../../gcc/tree.c:12093
0x112de82 walk_tree_1(tree_node**, tree_node* (*)(tree_node**, int*, void*),
void*, hash_set<tree_node*, default_hash_traits<tree_node*> >*, tree_node*
(*)(tree_node**, int*, tree_node* (*)(tree_node**, int*, void*), void*,
hash_set<tree_node*, default_hash_traits<tree_node*> >*))
        ../../gcc/tree.c:12415
0x112de82 walk_tree_1(tree_node**, tree_node* (*)(tree_node**, int*, void*),
void*, hash_set<tree_node*, default_hash_traits<tree_node*> >*, tree_node*
(*)(tree_node**, int*, tree_node* (*)(tree_node**, int*, void*), void*,
hash_set<tree_node*, default_hash_traits<tree_node*> >*))
        ../../gcc/tree.c:12415
0xeba9f6 remap_type_1
        ../../gcc/tree-inline.c:594
0xeb9481 remap_type(tree_node*, copy_body_data*)
        ../../gcc/tree-inline.c:623
0xec3952 remap_gimple_op_r
        ../../gcc/tree-inline.c:1015
0x112d5f3 walk_tree_1(tree_node**, tree_node* (*)(tree_node**, int*, void*),
void*, hash_set<tree_node*, default_hash_traits<tree_node*> >*, tree_node*
(*)(tree_node**, int*, tree_node* (*)(tree_node**, int*, void*), void*,
hash_set<tree_node*, default_hash_traits<tree_node*> >*))
        ../../gcc/tree.c:12093
0x112de82 walk_tree_1(tree_node**, tree_node* (*)(tree_node**, int*, void*),
void*, hash_set<tree_node*, default_hash_traits<tree_node*> >*, tree_node*
(*)(tree_node**, int*, tree_node* (*)(tree_node**, int*, void*), void*,
hash_set<tree_node*, default_hash_traits<tree_node*> >*))
        ../../gcc/tree.c:12415
0x112de82 walk_tree_1(tree_node**, tree_node* (*)(tree_node**, int*, void*),
void*, hash_set<tree_node*, default_hash_traits<tree_node*> >*, tree_node*
(*)(tree_node**, int*, tree_node* (*)(tree_node**, int*, void*), void*,
hash_set<tree_node*, default_hash_traits<tree_node*> >*))
        ../../gcc/tree.c:12415
0xb72a13 walk_gimple_op(gimple*, tree_node* (*)(tree_node**, int*, void*),
walk_stmt_info*)
        ../../gcc/gimple-walk.c:202
0xebcb91 remap_gimple_stmt
        ../../gcc/tree-inline.c:1794
0xebdf54 copy_bb
        ../../gcc/tree-inline.c:1844
0xebfcba copy_cfg_body
        ../../gcc/tree-inline.c:2779
0xebfcba copy_body
        ../../gcc/tree-inline.c:3021
0xec93a6 tree_function_versioning(tree_node*, tree_node*, vec<ipa_replace_map*,
va_gc, vl_embed>*, bool, bitmap_head*, bool, bitmap_head*, basic_block_def*)
        ../../gcc/tree-inline.c:5989

Reply via email to