[Bug c/98051] New: ICE in logical_combine, at gimple-range-gori.cc:754 in O2-Os

haoxintu at gmail dot com gcc-bugzilla@gcc.gnu.org
Sun Nov 29 13:00:00 GMT 2020


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

            Bug ID: 98051
           Summary: ICE in logical_combine, at gimple-range-gori.cc:754 in
                    O2-Os
           Product: gcc
           Version: 11.0
            Status: UNCONFIRMED
          Keywords: ice-on-valid-code
          Severity: normal
          Priority: P3
         Component: c
          Assignee: unassigned at gcc dot gnu.org
          Reporter: haoxintu at gmail dot com
  Target Milestone: ---

Hi all. The small.cc makes GCC-trunk crash under O2~Os, while O0-O1 is fine.

$cat small.c
#include <stdint.h>
void a(int b) {
  uint8_t c;
  int32_t d;
  for (;;)
    if (c >= ((b == (d == d)) > !b)) {
      int32_t e[] = {};
    }
}

$gcc-trunk -O2 -c small.c
during GIMPLE pass: evrp
small.c: In function ‘a’:
small.c:9:1: internal compiler error: in logical_combine, at
gimple-range-gori.cc:754
    9 | }
      | ^
0x6667df gori_compute::logical_combine(irange&, tree_code, irange const&,
tf_range const&, tf_range const&)
        ../../gcc/gimple-range-gori.cc:754
0x14d37cc gori_compute_cache::cache_stmt(gimple*)
        ../../gcc/gimple-range-gori.cc:1314
0x14d3bd1 gori_compute_cache::compute_operand_range(irange&, gimple*, irange
const&, tree_node*)
        ../../gcc/gimple-range-gori.cc:1279
0x14d15a1 gori_compute::compute_operand1_range(irange&, gimple*, irange const&,
tree_node*)
        ../../gcc/gimple-range-gori.cc:903
0x14d3b7c gori_compute::compute_operand_range(irange&, gimple*, irange const&,
tree_node*)
        ../../gcc/gimple-range-gori.cc:575
0x14d3b7c gori_compute_cache::compute_operand_range(irange&, gimple*, irange
const&, tree_node*)
        ../../gcc/gimple-range-gori.cc:1276
0x14d16ba gori_compute::compute_operand2_range(irange&, gimple*, irange const&,
tree_node*)
        ../../gcc/gimple-range-gori.cc:936
0x14d3b7c gori_compute::compute_operand_range(irange&, gimple*, irange const&,
tree_node*)
        ../../gcc/gimple-range-gori.cc:575
0x14d3b7c gori_compute_cache::compute_operand_range(irange&, gimple*, irange
const&, tree_node*)
        ../../gcc/gimple-range-gori.cc:1276
0x14d25a7 gori_compute::outgoing_edge_range_p(irange&, edge_def*, tree_node*)
        ../../gcc/gimple-range-gori.cc:1001
0x14cf26c ranger_cache::iterative_cache_update(tree_node*)
        ../../gcc/gimple-range-cache.cc:636
0x14cfc0c ranger_cache::fill_block_cache(tree_node*, basic_block_def*,
basic_block_def*)
        ../../gcc/gimple-range-cache.cc:808
0x14d01bf ranger_cache::block_range(irange&, basic_block_def*, tree_node*,
bool)
        ../../gcc/gimple-range-cache.cc:589
0x14c935a gimple_ranger::range_on_entry(irange&, basic_block_def*, tree_node*)
        ../../gcc/gimple-range.cc:875
0x14c98a8 gimple_ranger::range_of_expr(irange&, tree_node*, gimple*)
        ../../gcc/gimple-range.cc:846
0x14caad9 gimple_ranger::range_of_range_op(irange&, gimple*)
        ../../gcc/gimple-range.cc:418
0x14cce97 gimple_ranger::calc_stmt(irange&, gimple*, tree_node*)
        ../../gcc/gimple-range.cc:369
0x14cd355 gimple_ranger::range_of_stmt(irange&, gimple*, tree_node*)
        ../../gcc/gimple-range.cc:952
0x14c9918 gimple_ranger::range_of_expr(irange&, tree_node*, gimple*)
        ../../gcc/gimple-range.cc:843
0xdc69c5 range_query::value_of_expr(tree_node*, gimple*)
        ../../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.

$gcc-trunk -v
Using built-in specs.
COLLECT_GCC=gcc-trunk
COLLECT_LTO_WRAPPER=/home/tuhaoxin/compilers/gcc/build/libexec/gcc/x86_64-pc-linux-gnu/11.0.0/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: ../configure --prefix=/home/tuhaoxin/compilers/gcc/build/
--enable-bootstrap --enable-checking=release --enable-languages=c,c++
-disable-multilib
Thread model: posix
Supported LTO compression algorithms: zlib
gcc version 11.0.0 20201007 (experimental) (GCC)


More information about the Gcc-bugs mailing list