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

            Bug ID: 107989
           Summary: [13 Regression] ICE: in lower_bound, at
                    value-range.h:350 with -fsanitize=float-cast-overflow
           Product: gcc
           Version: 13.0
            Status: UNCONFIRMED
          Keywords: ice-on-valid-code
          Severity: normal
          Priority: P3
         Component: tree-optimization
          Assignee: unassigned at gcc dot gnu.org
          Reporter: zsojka at seznam dot cz
  Target Milestone: ---
              Host: x86_64-pc-linux-gnu
            Target: aarch64-unknown-linux-gnu

Created attachment 54027
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=54027&action=edit
reduced testcase

Compiler output:
$ aarch64-unknown-linux-gnu-gcc -O -fsanitize=float-cast-overflow testcase.c 
during GIMPLE pass: dom
testcase.c: In function 'foo':
testcase.c:8:1: internal compiler error: in lower_bound, at value-range.h:350
    8 | foo (void)
      | ^~~
0xa9c8bc frange::lower_bound() const
        /repo/gcc-trunk/gcc/value-range.h:350
0x1f18341 frange::lower_bound() const
        /repo/gcc-trunk/gcc/range-op-float.cc:2155
0x1f18341 foperator_mult::op1_range(frange&, tree_node*, frange const&, frange
const&, relation_trio) const
        /repo/gcc-trunk/gcc/range-op-float.cc:2149
0x1df1b27 gori_compute::compute_operand1_range(vrange&,
gimple_range_op_handler&, vrange const&, tree_node*, fur_source&,
value_relation*)
        /repo/gcc-trunk/gcc/gimple-range-gori.cc:1095
0x1df0873 gori_compute::compute_operand_range(vrange&, gimple*, vrange const&,
tree_node*, fur_source&, value_relation*)
        /repo/gcc-trunk/gcc/gimple-range-gori.cc:692
0x1df1ba3 gori_compute::compute_operand1_range(vrange&,
gimple_range_op_handler&, vrange const&, tree_node*, fur_source&,
value_relation*)
        /repo/gcc-trunk/gcc/gimple-range-gori.cc:1150
0x1df0873 gori_compute::compute_operand_range(vrange&, gimple*, vrange const&,
tree_node*, fur_source&, value_relation*)
        /repo/gcc-trunk/gcc/gimple-range-gori.cc:692
0x1df0571 gori_compute::compute_logical_operands(vrange&, vrange&,
gimple_range_op_handler&, irange const&, tree_node*, fur_source&, tree_node*,
bool)
        /repo/gcc-trunk/gcc/gimple-range-gori.cc:935
0x1df0e6c gori_compute::compute_operand_range(vrange&, gimple*, vrange const&,
tree_node*, fur_source&, value_relation*)
        /repo/gcc-trunk/gcc/gimple-range-gori.cc:674
0x1df1ba3 gori_compute::compute_operand1_range(vrange&,
gimple_range_op_handler&, vrange const&, tree_node*, fur_source&,
value_relation*)
        /repo/gcc-trunk/gcc/gimple-range-gori.cc:1150
0x1df0873 gori_compute::compute_operand_range(vrange&, gimple*, vrange const&,
tree_node*, fur_source&, value_relation*)
        /repo/gcc-trunk/gcc/gimple-range-gori.cc:692
0x1df4502 gori_compute::outgoing_edge_range_p(vrange&, edge_def*, tree_node*,
range_query&)
        /repo/gcc-trunk/gcc/gimple-range-gori.cc:1373
0x1de4fdf ranger_cache::range_from_dom(vrange&, tree_node*, basic_block_def*,
ranger_cache::rfd_mode)
        /repo/gcc-trunk/gcc/gimple-range-cache.cc:1517
0x1de6c51 ranger_cache::range_from_dom(vrange&, tree_node*, basic_block_def*,
ranger_cache::rfd_mode)
        /repo/gcc-trunk/gcc/gimple-range-cache.cc:1414
0x1de6c51 ranger_cache::fill_block_cache(tree_node*, basic_block_def*,
basic_block_def*)
        /repo/gcc-trunk/gcc/gimple-range-cache.cc:1212
0x1de78c1 ranger_cache::block_range(vrange&, basic_block_def*, tree_node*,
bool)
        /repo/gcc-trunk/gcc/gimple-range-cache.cc:1039
0x1dde5b1 gimple_ranger::range_on_entry(vrange&, basic_block_def*, tree_node*)
        /repo/gcc-trunk/gcc/gimple-range.cc:156
0x130dae0 path_range_query::internal_range_of_expr(vrange&, tree_node*,
gimple*)
        /repo/gcc-trunk/gcc/gimple-range-path.cc:176
0x130db60 path_range_query::range_of_expr(vrange&, tree_node*, gimple*)
        /repo/gcc-trunk/gcc/gimple-range-path.cc:202
0x1debf1e fold_using_range::range_of_range_op(vrange&,
gimple_range_op_handler&, fur_source&)
        /repo/gcc-trunk/gcc/gimple-range-fold.cc:558
Please submit a full bug report, with preprocessed source (by using
-freport-bug).
Please include the complete backtrace with any bug report.
See <https://gcc.gnu.org/bugs/> for instructions.

$ aarch64-unknown-linux-gnu-gcc -v
Using built-in specs.
COLLECT_GCC=/repo/gcc-trunk/binary-latest-aarch64/bin/aarch64-unknown-linux-gnu-gcc
COLLECT_LTO_WRAPPER=/repo/gcc-trunk/binary-trunk-r13-4497-20221206065114-g769370f3e2e-checking-yes-rtl-df-extra-aarch64/bin/../libexec/gcc/aarch64-unknown-linux-gnu/13.0.0/lto-wrapper
Target: aarch64-unknown-linux-gnu
Configured with: /repo/gcc-trunk//configure --enable-languages=c,c++
--enable-valgrind-annotations --disable-nls --enable-checking=yes,rtl,df,extra
--with-cloog --with-ppl --with-isl
--with-sysroot=/usr/aarch64-unknown-linux-gnu --build=x86_64-pc-linux-gnu
--host=x86_64-pc-linux-gnu --target=aarch64-unknown-linux-gnu
--with-ld=/usr/bin/aarch64-unknown-linux-gnu-ld
--with-as=/usr/bin/aarch64-unknown-linux-gnu-as --disable-libstdcxx-pch
--prefix=/repo/gcc-trunk//binary-trunk-r13-4497-20221206065114-g769370f3e2e-checking-yes-rtl-df-extra-aarch64
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 13.0.0 20221206 (experimental) (GCC)

Reply via email to