https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97488
Bug ID: 97488
Summary: [11 Regression] ICE: Segmentation fault (in
wi::set_bit_large)
Product: gcc
Version: 11.0
Status: UNCONFIRMED
Keywords: ice-on-invalid-code
Severity: normal
Priority: P3
Component: tree-optimization
Assignee: unassigned at gcc dot gnu.org
Reporter: asolokha at gmx dot com
CC: aldyh at gcc dot gnu.org
Target Milestone: ---
Target: x86_64-pc-linux-gnu
gcc-11.0.0-alpha20201018 snapshot (g:1e70b1a358b6ce3b894f284d88fbb90518d45cc0)
ICEs when compiling the following testcase w/ -O1 -ftree-vrp:
__int128
ef (__int128 ms)
{
int dh = 129;
int *hj = &dh;
return ms << *hj ? ms : 0;
}
% x86_64-pc-linux-gnu-gcc-11.0.0 -O1 -ftree-vrp -c byj7y5ib.c
during GIMPLE pass: evrp
byj7y5ib.c: In function 'ef':
byj7y5ib.c:8:1: internal compiler error: Segmentation fault
8 | }
| ^
0xdbbd3f crash_signal
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20201018/work/gcc-11-20201018/gcc/toplev.c:330
0x10f9d4d wi::set_bit_large(long*, long const*, unsigned int, unsigned int,
unsigned int)
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20201018/work/gcc-11-20201018/gcc/wide-int.cc:699
0x1834acf wi::binary_traits<generic_wide_int<wide_int_storage>,
generic_wide_int<wide_int_storage>,
wi::int_traits<generic_wide_int<wide_int_storage> >::precision_type,
wi::int_traits<generic_wide_int<wide_int_storage>
>::precision_type>::result_type wi::set_bit<generic_wide_int<wide_int_storage>
>(generic_wide_int<wide_int_storage> const&, unsigned int)
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20201018/work/gcc-11-20201018/gcc/wide-int.h:2246
0x1834acf operator_lshift::op1_range(irange&, tree_node*, irange const&, irange
const&) const
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20201018/work/gcc-11-20201018/gcc/range-op.cc:1610