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

            Bug ID: 97596
           Summary: [11 Regression] ICE in wide_int_to_tree_1, at
                    tree.c:1535
           Product: gcc
           Version: 11.0
            Status: UNCONFIRMED
          Keywords: ice-on-valid-code
          Severity: normal
          Priority: P3
         Component: tree-optimization
          Assignee: unassigned at gcc dot gnu.org
          Reporter: asolokha at gmx dot com
  Target Milestone: ---
            Target: x86_64-unknown-linux-gnu

gcc-11.0.0-alpha20201025 snapshot (g:308e40331f9d2820f8286769b5fc764671187364)
ICEs when compiling the following testcase w/ -O1 -ftree-vrp:

void
q8 (__int128 *uv, unsigned short int nf)
{
  __int128 i4;

  i4 = -nf;
  if (i4 << 1 != 0)
    *uv += nf;
}

% x86_64-unknown-linux-gnu-gcc-11.0.0 -O1 -ftree-vrp -c imh2lgdh.c
during GIMPLE pass: evrp
imh2lgdh.c: In function 'q8':
imh2lgdh.c:9:1: internal compiler error: in wide_int_to_tree_1, at tree.c:1535
    9 | }
      | ^
0x71dc76 wide_int_to_tree_1
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20201025/work/gcc-11-20201025/gcc/tree.c:1535
0x184164c int_range<2u>::int_range(tree_node*,
generic_wide_int<wide_int_storage> const&, generic_wide_int<wide_int_storage>
const&, value_range_kind)
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20201025/work/gcc-11-20201025/gcc/value-range.h:430
0x184164c operator_lshift::op1_range(irange&, tree_node*, irange const&, irange
const&) const
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20201025/work/gcc-11-20201025/gcc/range-op.cc:1620
0x174fe13 gori_compute::compute_operand1_range(irange&, gimple*, irange const&,
tree_node*)
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20201025/work/gcc-11-20201025/gcc/gimple-range-gori.cc:878
0x1752a4e gori_compute::compute_operand_range(irange&, gimple*, irange const&,
tree_node*)
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20201025/work/gcc-11-20201025/gcc/gimple-range-gori.cc:575
0x1752a4e gori_compute_cache::compute_operand_range(irange&, gimple*, irange
const&, tree_node*)
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20201025/work/gcc-11-20201025/gcc/gimple-range-gori.cc:1280
0x174fed1 gori_compute::compute_operand1_range(irange&, gimple*, irange const&,
tree_node*)
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20201025/work/gcc-11-20201025/gcc/gimple-range-gori.cc:903
0x1752a4e gori_compute::compute_operand_range(irange&, gimple*, irange const&,
tree_node*)
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20201025/work/gcc-11-20201025/gcc/gimple-range-gori.cc:575
0x1752a4e gori_compute_cache::compute_operand_range(irange&, gimple*, irange
const&, tree_node*)
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20201025/work/gcc-11-20201025/gcc/gimple-range-gori.cc:1280
0x1751a07 gori_compute::outgoing_edge_range_p(irange&, edge_def*, tree_node*)
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20201025/work/gcc-11-20201025/gcc/gimple-range-gori.cc:1003
0x174d99e ranger_cache::iterative_cache_update(tree_node*)
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20201025/work/gcc-11-20201025/gcc/gimple-range-cache.cc:636
0x174dee2 ranger_cache::fill_block_cache(tree_node*, basic_block_def*,
basic_block_def*)
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20201025/work/gcc-11-20201025/gcc/gimple-range-cache.cc:808
0x174e696 ranger_cache::block_range(irange&, basic_block_def*, tree_node*,
bool)
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20201025/work/gcc-11-20201025/gcc/gimple-range-cache.cc:589
0x1746f74 gimple_ranger::range_on_entry(irange&, basic_block_def*, tree_node*)
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20201025/work/gcc-11-20201025/gcc/gimple-range.cc:939
0x17478cb gimple_ranger::range_of_expr(irange&, tree_node*, gimple*)
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20201025/work/gcc-11-20201025/gcc/gimple-range.cc:910
0x1748d04 gimple_ranger::range_of_range_op(irange&, gimple*)
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20201025/work/gcc-11-20201025/gcc/gimple-range.cc:424
0x174af4f gimple_ranger::calc_stmt(irange&, gimple*, tree_node*)
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20201025/work/gcc-11-20201025/gcc/gimple-range.cc:369
0x174b2df gimple_ranger::range_of_stmt(irange&, gimple*, tree_node*)
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20201025/work/gcc-11-20201025/gcc/gimple-range.cc:1016
0x1747998 gimple_ranger::range_of_expr(irange&, tree_node*, gimple*)
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20201025/work/gcc-11-20201025/gcc/gimple-range.cc:907
0x10a9d21 range_query::value_of_expr(tree_node*, gimple*)
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20201025/work/gcc-11-20201025/gcc/value-query.cc:86

Reply via email to