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

            Bug ID: 85876
           Summary: ICE in move_op_ascend, at sel-sched.c:6164
           Product: gcc
           Version: unknown
            Status: UNCONFIRMED
          Keywords: ice-on-valid-code
          Severity: normal
          Priority: P3
         Component: rtl-optimization
          Assignee: unassigned at gcc dot gnu.org
          Reporter: asolokha at gmx dot com
  Target Milestone: ---
            Target: x86_64-unknown-linux-gnu

gcc-9.0.0-alpha20180520 snapshot (r260425), 8.1, 7.3, 6.3, 5.4, 4.9.4 all ICE
when compiling the following snippet w/ -march=bdver1 -O2 (-O3, -Ofast)
-fschedule-insns -fsel-sched-pipelining -fselective-scheduling
-fno-if-conversion -fno-tree-dce:

int ov, rq, ac;

int
y2 (int);

void
f8 (int vn)
{
  while (rq < 1)
    {
      ov *= y2 (ac);
      vn += (!!ov && !!ac) + ac;
    }
}

% x86_64-unknown-linux-gnu-gcc-9.0.0-alpha20180520 -march=bdver1 -O2
-fschedule-insns -fsel-sched-pipelining -fselective-scheduling
-fno-if-conversion -fno-tree-dce -c nnsbuwm9.c
during RTL pass: sched1
nnsbuwm9.c: In function 'f8':
nnsbuwm9.c:14:1: internal compiler error: in move_op_ascend, at
sel-sched.c:6164
 }
 ^
0x64f8c9 move_op_ascend
       
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20180520/work/gcc-9-20180520/gcc/sel-sched.c:6164
0xc64d61 code_motion_path_driver
       
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20180520/work/gcc-9-20180520/gcc/sel-sched.c:6660
0xc65872 move_op
       
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20180520/work/gcc-9-20180520/gcc/sel-sched.c:6714
0xc65872 move_exprs_to_boundary
       
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20180520/work/gcc-9-20180520/gcc/sel-sched.c:5237
0xc65872 schedule_expr_on_boundary
       
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20180520/work/gcc-9-20180520/gcc/sel-sched.c:5450
0xc6973c fill_insns
       
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20180520/work/gcc-9-20180520/gcc/sel-sched.c:5592
0xc6973c schedule_on_fences
       
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20180520/work/gcc-9-20180520/gcc/sel-sched.c:7366
0xc6973c sel_sched_region_2
       
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20180520/work/gcc-9-20180520/gcc/sel-sched.c:7504
0xc6ae26 sel_sched_region_1
       
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20180520/work/gcc-9-20180520/gcc/sel-sched.c:7546
0xc6b61e sel_sched_region(int)
       
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20180520/work/gcc-9-20180520/gcc/sel-sched.c:7647
0xc6c511 run_selective_scheduling()
       
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20180520/work/gcc-9-20180520/gcc/sel-sched.c:7733
0xc4c29d rest_of_handle_sched
       
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20180520/work/gcc-9-20180520/gcc/sched-rgn.c:3718
0xc4c29d execute
       
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20180520/work/gcc-9-20180520/gcc/sched-rgn.c:3828

I hope this is not a duplicate of some other sel-sched PR.

Reply via email to