https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97467
Bug ID: 97467 Summary: ICE in verify_range, at value-range.cc:369 (-Os and above) Product: gcc Version: 11.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: tree-optimization Assignee: unassigned at gcc dot gnu.org Reporter: su at cs dot ucdavis.edu Target Milestone: --- [594] % gcctk -v Using built-in specs. COLLECT_GCC=gcctk COLLECT_LTO_WRAPPER=/local/suz-local/software/local/gcc-trunk/libexec/gcc/x86_64-pc-linux-gnu/11.0.0/lto-wrapper Target: x86_64-pc-linux-gnu Configured with: ../gcc-trunk/configure --disable-bootstrap --prefix=/local/suz-local/software/local/gcc-trunk --enable-languages=c,c++ --disable-werror --enable-multilib --with-system-zlib Thread model: posix Supported LTO compression algorithms: zlib gcc version 11.0.0 20201017 (experimental) [master revision 56e4eee935c:ba026021eaa:f476a9fe912132abf06c2832a1bb9abe6c1a1bb1] (GCC) [595] % [595] % gcctk -O1 small.c [596] % [596] % gcctk -Os small.c during GIMPLE pass: evrp small.c: In function ‘main’: small.c:13:1: internal compiler error: in verify_range, at value-range.cc:369 13 | } | ^ 0x104b853 irange::verify_range() ../../gcc-trunk/gcc/value-range.cc:369 0x104e8b7 irange::irange_set(tree_node*, tree_node*) ../../gcc-trunk/gcc/value-range.cc:172 0x104e8b7 irange::set(tree_node*, tree_node*, value_range_kind) ../../gcc-trunk/gcc/value-range.cc:226 0x1851ec5 int_range<2u>::int_range(tree_node*, generic_wide_int<wide_int_storage> const&, generic_wide_int<wide_int_storage> const&, value_range_kind) ../../gcc-trunk/gcc/value-range.h:431 0x1851ec5 operator_lshift::op1_range(irange&, tree_node*, irange const&, irange const&) const ../../gcc-trunk/gcc/range-op.cc:1611 0x18e9398 gori_compute::compute_operand1_range(irange&, gimple*, irange const&, tree_node*) ../../gcc-trunk/gcc/gimple-range-gori.cc:878 0x18eb2d3 gori_compute_cache::compute_operand_range(irange&, gimple*, irange const&, tree_node*) ../../gcc-trunk/gcc/gimple-range-gori.cc:1271 0x18e9457 gori_compute::compute_operand1_range(irange&, gimple*, irange const&, tree_node*) ../../gcc-trunk/gcc/gimple-range-gori.cc:903 0x18eb2d3 gori_compute_cache::compute_operand_range(irange&, gimple*, irange const&, tree_node*) ../../gcc-trunk/gcc/gimple-range-gori.cc:1271 0x18e9d9d gori_compute::outgoing_edge_range_p(irange&, edge_def*, tree_node*) ../../gcc-trunk/gcc/gimple-range-gori.cc:1002 0x18e4b00 ranger_cache::iterative_cache_update(tree_node*) ../../gcc-trunk/gcc/gimple-range-cache.cc:636 0x18e5783 ranger_cache::fill_block_cache(tree_node*, basic_block_def*, basic_block_def*) ../../gcc-trunk/gcc/gimple-range-cache.cc:873 0x18e5b7e ranger_cache::block_range(irange&, basic_block_def*, tree_node*, bool) ../../gcc-trunk/gcc/gimple-range-cache.cc:589 0x18d8a00 gimple_ranger::range_on_entry(irange&, basic_block_def*, tree_node*) ../../gcc-trunk/gcc/gimple-range.cc:909 0x18d9384 gimple_ranger::range_of_expr(irange&, tree_node*, gimple*) ../../gcc-trunk/gcc/gimple-range.cc:880 0x18dbb27 gimple_ranger::range_of_range_op(irange&, gimple*) ../../gcc-trunk/gcc/gimple-range.cc:418 0x18e0203 gimple_ranger::calc_stmt(irange&, gimple*, tree_node*) ../../gcc-trunk/gcc/gimple-range.cc:369 0x18e09a9 gimple_ranger::range_of_stmt(irange&, gimple*, tree_node*) ../../gcc-trunk/gcc/gimple-range.cc:986 0x18d9485 gimple_ranger::range_of_expr(irange&, tree_node*, gimple*) ../../gcc-trunk/gcc/gimple-range.cc:877 0x104a61e range_query::value_of_expr(tree_node*, gimple*) ../../gcc-trunk/gcc/value-query.cc:85 Please submit a full bug report, with preprocessed source if appropriate. Please include the complete backtrace with any bug report. See <https://gcc.gnu.org/bugs/> for instructions. [597] % [597] % cat small.c int a; long b; unsigned int c = 1; int main () { int e; for (; c <= 0; c++) { int f = 0; b = e; a = f || b << c; } return 0; }