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

            Bug ID: 106556
           Summary: [13 Regression] ICE in as_a, at value-range.h:399
           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: asolokha at gmx dot com
  Target Milestone: ---

gfortran 13.0.0 20220807 snapshot (g:ef54eb74cab17737804af2c404e6674ce07f87c9)
ICEs when compiling the following testcase, extracted from
gcc/testsuite/gfortran.dg/minlocval_1.f90, w/ -O1 -fnon-call-exceptions
-ftree-loop-if-convert:

  real :: a(2)

  a(:) = 1.0
  if (minloc (a, dim = 1).ne.1) STOP 1
end

% gfortran-13.0.0 -O1 -fnon-call-exceptions -ftree-loop-if-convert -c
rtqdudpz.f90
during GIMPLE pass: dom
rtqdudpz.f90:5:3:

    5 | end
      |   ^
internal compiler error: in as_a, at value-range.h:399
0x7afa1d irange& as_a<irange>(vrange&)
       
/var/tmp/portage/sys-devel/gcc-13.0.0_p20220807/work/gcc-13-20220807/gcc/value-range.h:399
0x7afa1d irange& as_a<irange>(vrange&)
       
/var/tmp/portage/sys-devel/gcc-13.0.0_p20220807/work/gcc-13-20220807/gcc/value-range.h:397
0x7afa1d vrange::operator=(vrange const&)
       
/var/tmp/portage/sys-devel/gcc-13.0.0_p20220807/work/gcc-13-20220807/gcc/value-range.cc:198
0x7afa1d vrange::operator=(vrange const&)
       
/var/tmp/portage/sys-devel/gcc-13.0.0_p20220807/work/gcc-13-20220807/gcc/value-range.cc:195
0x1da8dd1 gori_compute::compute_operand1_range(vrange&, gimple*, vrange const&,
tree_node*, fur_source&)
       
/var/tmp/portage/sys-devel/gcc-13.0.0_p20220807/work/gcc-13-20220807/gcc/gimple-range-gori.cc:1076
0x1daa4af gori_compute::condexpr_adjust(vrange&, vrange&, gimple*, tree_node*,
tree_node*, tree_node*, fur_source&)
       
/var/tmp/portage/sys-devel/gcc-13.0.0_p20220807/work/gcc-13-20220807/gcc/gimple-range-gori.cc:1404
0x1da0e96 fold_using_range::range_of_cond_expr(vrange&, gassign*, fur_source&)
       
/var/tmp/portage/sys-devel/gcc-13.0.0_p20220807/work/gcc-13-20220807/gcc/gimple-range-fold.cc:1303
0x1da5511 fold_using_range::fold_stmt(vrange&, gimple*, fur_source&,
tree_node*)
       
/var/tmp/portage/sys-devel/gcc-13.0.0_p20220807/work/gcc-13-20220807/gcc/gimple-range-fold.cc:561
0x1d97ae3 gimple_ranger::fold_range_internal(vrange&, gimple*, tree_node*)
       
/var/tmp/portage/sys-devel/gcc-13.0.0_p20220807/work/gcc-13-20220807/gcc/gimple-range.cc:258
0x1d97ae3 gimple_ranger::range_of_stmt(vrange&, gimple*, tree_node*)
       
/var/tmp/portage/sys-devel/gcc-13.0.0_p20220807/work/gcc-13-20220807/gcc/gimple-range.cc:319
0x1d9678c gimple_ranger::range_on_entry(vrange&, basic_block_def*, tree_node*)
       
/var/tmp/portage/sys-devel/gcc-13.0.0_p20220807/work/gcc-13-20220807/gcc/gimple-range.cc:153
0x1d96ab0 gimple_ranger::range_on_exit(vrange&, basic_block_def*, tree_node*)
       
/var/tmp/portage/sys-devel/gcc-13.0.0_p20220807/work/gcc-13-20220807/gcc/gimple-range.cc:190
0x1d988d9 gimple_ranger::range_on_edge(vrange&, edge_def*, tree_node*)
       
/var/tmp/portage/sys-devel/gcc-13.0.0_p20220807/work/gcc-13-20220807/gcc/gimple-range.cc:234
0x1da15ec fold_using_range::range_of_phi(vrange&, gphi*, fur_source&)
       
/var/tmp/portage/sys-devel/gcc-13.0.0_p20220807/work/gcc-13-20220807/gcc/gimple-range-fold.cc:802
0x1da54b0 fold_using_range::fold_stmt(vrange&, gimple*, fur_source&,
tree_node*)
       
/var/tmp/portage/sys-devel/gcc-13.0.0_p20220807/work/gcc-13-20220807/gcc/gimple-range-fold.cc:557
0x1d97ae3 gimple_ranger::fold_range_internal(vrange&, gimple*, tree_node*)
       
/var/tmp/portage/sys-devel/gcc-13.0.0_p20220807/work/gcc-13-20220807/gcc/gimple-range.cc:258
0x1d97ae3 gimple_ranger::range_of_stmt(vrange&, gimple*, tree_node*)
       
/var/tmp/portage/sys-devel/gcc-13.0.0_p20220807/work/gcc-13-20220807/gcc/gimple-range.cc:319
0x1d986c6 gimple_ranger::range_of_expr(vrange&, tree_node*, gimple*)
       
/var/tmp/portage/sys-devel/gcc-13.0.0_p20220807/work/gcc-13-20220807/gcc/gimple-range.cc:126
0x10aa620 cprop_operand
       
/var/tmp/portage/sys-devel/gcc-13.0.0_p20220807/work/gcc-13-20220807/gcc/tree-ssa-dom.cc:1839
0x10aca32 cprop_into_stmt
       
/var/tmp/portage/sys-devel/gcc-13.0.0_p20220807/work/gcc-13-20220807/gcc/tree-ssa-dom.cc:1916

Reply via email to