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

            Bug ID: 85826
           Summary: [9 Regression] ICE in builtin_memref in
                    gcc/gimple-ssa-warn-restrict.c:281 starting with
                    r260280
           Product: gcc
           Version: unknown
            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
                CC: msebor at gcc dot gnu.org
  Target Milestone: ---

Following ICEs:

$ gcc /home/marxin/Programming/gcc/gcc/testsuite/gcc.target/i386/pr66817.c
-Warray-bounds -O3
during GIMPLE pass: wrestrict
/home/marxin/Programming/gcc/gcc/testsuite/gcc.target/i386/pr66817.c: In
function ‘retframe_block’:
/home/marxin/Programming/gcc/gcc/testsuite/gcc.target/i386/pr66817.c:16:3:
internal compiler error: tree check: expected integer_cst, have var_decl in
get_len, at tree.h:5571
   retframe_block ()
   ^~~~~~~~~~~~~~
0x5d5f98 tree_check_failed(tree_node const*, char const*, int, char const*,
...)
        ../../gcc/tree.c:9337
0x95e3fb tree_check(tree_node const*, char const*, int, char const*, tree_code)
        ../../gcc/tree.h:3391
0x95e3fb wi::extended_tree<128>::get_len() const
        ../../gcc/tree.h:5571
0x95e3fb wi::int_traits<generic_wide_int<wi::extended_tree<128> >
>::decompose(long*, unsigned int, generic_wide_int<wi::extended_tree<128> >
const&)
        ../../gcc/wide-int.h:934
0x95e3fb wide_int_ref_storage<true,
false>::wide_int_ref_storage<generic_wide_int<wi::extended_tree<128> >
>(generic_wide_int<wi::extended_tree<128> > const&, unsigned int)
        ../../gcc/wide-int.h:983
0x95e3fb generic_wide_int<wide_int_ref_storage<true, false>
>::generic_wide_int<generic_wide_int<wi::extended_tree<128> >
>(generic_wide_int<wi::extended_tree<128> > const&, unsigned int)
        ../../gcc/wide-int.h:758
0x95e3fb
fixed_wide_int_storage<128>::fixed_wide_int_storage<generic_wide_int<wi::extended_tree<128>
> >(generic_wide_int<wi::extended_tree<128> > const&)
        ../../gcc/wide-int.h:1211
0x95e3fb generic_wide_int<fixed_wide_int_storage<128> >&
generic_wide_int<fixed_wide_int_storage<128>
>::operator=<generic_wide_int<wi::extended_tree<128> >
>(generic_wide_int<wi::extended_tree<128> > const&)
        ../../gcc/wide-int.h:886
0x95e3fb builtin_memref
        ../../gcc/gimple-ssa-warn-restrict.c:281
0x95fac2 check_bounds_or_overlap(gcall*, tree_node*, tree_node*, tree_node*,
tree_node*, bool)
        ../../gcc/gimple-ssa-warn-restrict.c:1855
0x96270b check_call
        ../../gcc/gimple-ssa-warn-restrict.c:1826
0x96270b before_dom_children
        ../../gcc/gimple-ssa-warn-restrict.c:106
0x146bd9f dom_walker::walk(basic_block_def*)
        ../../gcc/domwalk.c:353
0x957071 execute
        ../../gcc/gimple-ssa-warn-restrict.c:120

Reply via email to