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

            Bug ID: 92608
           Summary: [9/10 Regression] ICE: Segmentation fault (in
                    find_loop_guard)
           Product: gcc
           Version: 10.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: tree-optimization
          Assignee: unassigned at gcc dot gnu.org
          Reporter: asolokha at gmx dot com
  Target Milestone: ---

gcc-10.0.0-alpha20191117 snapshot (r278376) ICEs when compiling the following
testcase w/ -O1 -funswitch-loops:

int op, bs;

void
q0 (void)
{
  op += 1 % (op == bs);
}

void __attribute__ ((returns_twice))
co (void)
{
}

void __attribute__ ((simd))
uq (void)
{
  q0 ();
  co ();

  while (bs < 1)
    ++bs;
}

% gcc-10.0.0-alpha20191117 -O1 -funswitch-loops -c aixmnmbv.c
during GIMPLE pass: unswitch
aixmnmbv.c: In function 'uq.simdclone.0':
aixmnmbv.c:15:1: internal compiler error: Segmentation fault
   15 | uq (void)
      | ^~
0xd24ee0 crash_signal
       
/var/tmp/portage/sys-devel/gcc-10.0.0_alpha20191117/work/gcc-10-20191117/gcc/toplev.c:328
0xe7fff5 gcond* dyn_cast<gcond*, gimple>(gimple*)
       
/var/tmp/portage/sys-devel/gcc-10.0.0_alpha20191117/work/gcc-10-20191117/gcc/is-a.h:224
0xe7fff5 find_loop_guard
       
/var/tmp/portage/sys-devel/gcc-10.0.0_alpha20191117/work/gcc-10-20191117/gcc/tree-ssa-loop-unswitch.c:589
0xe7fff5 tree_unswitch_outer_loop
       
/var/tmp/portage/sys-devel/gcc-10.0.0_alpha20191117/work/gcc-10-20191117/gcc/tree-ssa-loop-unswitch.c:531
0xe7fff5 tree_ssa_unswitch_loops()
       
/var/tmp/portage/sys-devel/gcc-10.0.0_alpha20191117/work/gcc-10-20191117/gcc/tree-ssa-loop-unswitch.c:103

Reply via email to