public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug tree-optimization/108647] New: [13 Regression] ICE in upper_bound, at value-range.h:950 with -O3
@ 2023-02-02 21:21 vsevolod.livinskiy at gmail dot com
  2023-02-03  1:45 ` [Bug tree-optimization/108647] " pinskia at gcc dot gnu.org
                   ` (22 more replies)
  0 siblings, 23 replies; 24+ messages in thread
From: vsevolod.livinskiy at gmail dot com @ 2023-02-02 21:21 UTC (permalink / raw)
  To: gcc-bugs

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

            Bug ID: 108647
           Summary: [13 Regression] ICE in upper_bound, at
                    value-range.h:950 with -O3
           Product: gcc
           Version: 13.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: tree-optimization
          Assignee: unassigned at gcc dot gnu.org
          Reporter: vsevolod.livinskiy at gmail dot com
  Target Milestone: ---

Link to the Compiler Explorer: https://godbolt.org/z/PMGTPGPab

Reproducer:
bool a;
int b, c;
inline const bool &d(bool &e, const bool &f) { return f < e ? f : e; }
void g(char e, bool f[], bool h[], bool p4[]) {
  for (;;)
    if (p4)
      for (char j = 0; j < 6; j += (f[0] & c ? p4[0] : int(0 >= e))
                                       ? 0
                                       : d(p4[0], p4[0] > h[0]) + 1) {
        a = 0;
        b = 0;
      }
}

Error:
>$ g++ -O3 -c func.cpp
during GIMPLE pass: thread
func.cpp: In function 'void g(char, bool*, bool*, bool*)':
func.cpp:4:6: internal compiler error: in upper_bound, at value-range.h:950
    4 | void g(char e, bool f[], bool h[], bool p4[]) {
      |      ^
0x995922 irange::upper_bound() const
        /testing/gcc/gcc_src_master/gcc/value-range.h:950
0x9961f0 irange::upper_bound() const
        /testing/gcc/gcc_src_master/gcc/tree.h:3653
0x9961f0 operator_lt::op2_range(irange&, tree_node*, irange const&, irange
const&, relation_trio) const
        /testing/gcc/gcc_src_master/gcc/range-op.cc:952
0x20cc69f gori_compute::refine_using_relation(tree_node*, vrange&, tree_node*,
vrange&, fur_source&, relation_kind_t)
        /testing/gcc/gcc_src_master/gcc/gimple-range-gori.cc:1034
0x20ce404 gori_compute::compute_operand1_range(vrange&,
gimple_range_op_handler&, vrange const&, tree_node*, fur_source&,
value_relation*)
        /testing/gcc/gcc_src_master/gcc/gimple-range-gori.cc:1092
0x20cd0e5 gori_compute::compute_operand_range(vrange&, gimple*, vrange const&,
tree_node*, fur_source&, value_relation*)
        /testing/gcc/gcc_src_master/gcc/gimple-range-gori.cc:700
0x20d0ad8 gori_compute::outgoing_edge_range_p(vrange&, edge_def*, tree_node*,
range_query&)
        /testing/gcc/gcc_src_master/gcc/gimple-range-gori.cc:1358
0x141362d path_range_query::compute_ranges_in_block(basic_block_def*)
        /testing/gcc/gcc_src_master/gcc/gimple-range-path.cc:454
0x1413d3a path_range_query::compute_ranges(bitmap_head const*)
        /testing/gcc/gcc_src_master/gcc/gimple-range-path.cc:622
0x149cd3a back_threader::find_taken_edge_cond(vec<basic_block_def*, va_heap,
vl_ptr> const&, gcond*)
        /testing/gcc/gcc_src_master/gcc/tree-ssa-threadbackward.cc:324
0x149cf33 back_threader::maybe_register_path(back_threader_profitability&)
        /testing/gcc/gcc_src_master/gcc/tree-ssa-threadbackward.cc:248
0x149d2d0 back_threader::find_paths_to_names(basic_block_def*, bitmap_head*,
unsigned int, back_threader_profitability&)
        /testing/gcc/gcc_src_master/gcc/tree-ssa-threadbackward.cc:371
0x149d789 back_threader::find_paths_to_names(basic_block_def*, bitmap_head*,
unsigned int, back_threader_profitability&)
        /testing/gcc/gcc_src_master/gcc/tree-ssa-threadbackward.cc:479
0x149d789 back_threader::find_paths_to_names(basic_block_def*, bitmap_head*,
unsigned int, back_threader_profitability&)
        /testing/gcc/gcc_src_master/gcc/tree-ssa-threadbackward.cc:479
0x149d789 back_threader::find_paths_to_names(basic_block_def*, bitmap_head*,
unsigned int, back_threader_profitability&)
        /testing/gcc/gcc_src_master/gcc/tree-ssa-threadbackward.cc:479
0x149d789 back_threader::find_paths_to_names(basic_block_def*, bitmap_head*,
unsigned int, back_threader_profitability&)
        /testing/gcc/gcc_src_master/gcc/tree-ssa-threadbackward.cc:479
0x149e258 back_threader::maybe_thread_block(basic_block_def*)
        /testing/gcc/gcc_src_master/gcc/tree-ssa-threadbackward.cc:551
0x149e321 back_threader::thread_blocks()
        /testing/gcc/gcc_src_master/gcc/tree-ssa-threadbackward.cc:975
0x149e398 execute
        /testing/gcc/gcc_src_master/gcc/tree-ssa-threadbackward.cc:1077

gcc version 13.0.1 20230201 (a2c848c92c3f13c2dd9bd92d22beb44c1ff848b4)

^ permalink raw reply	[flat|nested] 24+ messages in thread

end of thread, other threads:[~2023-02-04  7:26 UTC | newest]

Thread overview: 24+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-02-02 21:21 [Bug tree-optimization/108647] New: [13 Regression] ICE in upper_bound, at value-range.h:950 with -O3 vsevolod.livinskiy at gmail dot com
2023-02-03  1:45 ` [Bug tree-optimization/108647] " pinskia at gcc dot gnu.org
2023-02-03  8:04 ` rguenth at gcc dot gnu.org
2023-02-03  9:21 ` [Bug tree-optimization/108647] [13 Regression] ICE in upper_bound, at value-range.h:950 with -O3 since r13-2974-g67166c9ec35d58ef marxin at gcc dot gnu.org
2023-02-03  9:29 ` jakub at gcc dot gnu.org
2023-02-03  9:54 ` jakub at gcc dot gnu.org
2023-02-03 12:46 ` aldyh at gcc dot gnu.org
2023-02-03 14:54 ` amacleod at redhat dot com
2023-02-03 15:11 ` jakub at gcc dot gnu.org
2023-02-03 15:15 ` jakub at gcc dot gnu.org
2023-02-03 15:20 ` amacleod at redhat dot com
2023-02-03 15:23 ` jakub at gcc dot gnu.org
2023-02-03 15:28 ` amacleod at redhat dot com
2023-02-03 16:16 ` aldyh at gcc dot gnu.org
2023-02-03 16:31 ` aldyh at gcc dot gnu.org
2023-02-03 16:33 ` jakub at gcc dot gnu.org
2023-02-03 16:35 ` aldyh at gcc dot gnu.org
2023-02-03 20:31 ` cvs-commit at gcc dot gnu.org
2023-02-03 20:39 ` cvs-commit at gcc dot gnu.org
2023-02-03 20:43 ` jakub at gcc dot gnu.org
2023-02-04  1:35 ` raj.khem at gmail dot com
2023-02-04  4:28 ` jakub at gcc dot gnu.org
2023-02-04  5:25 ` jakub at gcc dot gnu.org
2023-02-04  7:26 ` raj.khem at gmail dot com

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).