[Bug rtl-optimization/85528] New: ICE in code_motion_process_successors, at sel-sched.c:6403

asolokha at gmx dot com gcc-bugzilla@gcc.gnu.org
Thu Apr 26 04:14:00 GMT 2018


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

            Bug ID: 85528
           Summary: ICE in code_motion_process_successors, at
                    sel-sched.c:6403
           Product: gcc
           Version: unknown
            Status: UNCONFIRMED
          Keywords: ice-checking, 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: powerpc-*-linux-gnu*, powerpcspe-*-linux-gnu*

gcc-8.0.0-alpha20180422 snapshot (r259553) w/ r259563 applied still ICEs when
compiling the following snippet w/ -misel -O1 -frename-registers
-fschedule-insns2 -fselective-scheduling2 -ftree-pre -fvar-tracking-assignments
-fno-ssa-phiopt -fno-tree-ccp -fno-tree-dce -fno-tree-fre:

long long int id;
short int am;
int sf;

void
qj (void)
{
  if (id == 0)
    return;

  for (;;)
    {
      short int kq;

      id *= 2;
      kq = id;
      id = (kq < 3) ? sf : 0;
      if (id == 0)
        {
          int bp;

          bp = !!id || !!sf;
          am += bp * (!!id || !!(kq *= 2));
        }
      else
        sf += id;
    }
}

% powerpc-e300c3-linux-gnu-gcc-8.0.0-alpha20180422 -misel -O1
-frename-registers -fschedule-insns2 -fselective-scheduling2 -ftree-pre
-fvar-tracking-assignments -fno-ssa-phiopt -fno-tree-ccp -fno-tree-dce
-fno-tree-fre -w -c sx9cnxly.c 
during RTL pass: sched2
sx9cnxly.c: In function 'qj':
sx9cnxly.c:28:1: internal compiler error: in code_motion_process_successors, at
sel-sched.c:6403
 }
 ^
0xc1180b code_motion_process_successors
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-8.0.0_alpha20180422/work/gcc-8-20180422/gcc/sel-sched.c:6400
0xc1180b code_motion_path_driver
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-8.0.0_alpha20180422/work/gcc-8-20180422/gcc/sel-sched.c:6622
0xc11269 code_motion_process_successors
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-8.0.0_alpha20180422/work/gcc-8-20180422/gcc/sel-sched.c:6356
0xc11269 code_motion_path_driver
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-8.0.0_alpha20180422/work/gcc-8-20180422/gcc/sel-sched.c:6622
0xc11ab5 move_op
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-8.0.0_alpha20180422/work/gcc-8-20180422/gcc/sel-sched.c:6714
0xc11ab5 move_exprs_to_boundary
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-8.0.0_alpha20180422/work/gcc-8-20180422/gcc/sel-sched.c:5237
0xc11ab5 schedule_expr_on_boundary
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-8.0.0_alpha20180422/work/gcc-8-20180422/gcc/sel-sched.c:5450
0xc15b28 fill_insns
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-8.0.0_alpha20180422/work/gcc-8-20180422/gcc/sel-sched.c:5592
0xc1796e schedule_on_fences
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-8.0.0_alpha20180422/work/gcc-8-20180422/gcc/sel-sched.c:7366
0xc1796e sel_sched_region_2
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-8.0.0_alpha20180422/work/gcc-8-20180422/gcc/sel-sched.c:7504
0xc189e1 sel_sched_region_1
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-8.0.0_alpha20180422/work/gcc-8-20180422/gcc/sel-sched.c:7546
0xc19fd5 sel_sched_region(int)
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-8.0.0_alpha20180422/work/gcc-8-20180422/gcc/sel-sched.c:7647
0xc1a929 run_selective_scheduling()
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-8.0.0_alpha20180422/work/gcc-8-20180422/gcc/sel-sched.c:7733
0xbf142d rest_of_handle_sched2
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-8.0.0_alpha20180422/work/gcc-8-20180422/gcc/sched-rgn.c:3732
0xbf142d execute
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-8.0.0_alpha20180422/work/gcc-8-20180422/gcc/sched-rgn.c:3876


More information about the Gcc-bugs mailing list