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

            Bug ID: 83089
           Summary: [8 Regression] ICE: Segmentation fault (in
                    instantiate_scev_name)
           Product: gcc
           Version: 8.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: ---

gcc-8.0.0-alpha20171119 snapshot (r254939) ICEs when compiling the following
snippet w/ -O2 (-O3, -Ofast) -ftree-loop-if-convert -ftree-parallelize-loops=2:

int rl, s8;

void
it (int zy, short int el)
{
  int hb;

  while (el != 0)
    {
      hb = el;
      for (rl = 0; rl < 200; ++rl)
        {
          for (s8 = 0; s8 < 2; ++s8)
            {
            }
          if (s8 < 3)
            zy = hb;
          if (hb == 0)
           ++s8;
          zy += (s8 != -1);
        }
        el = zy;
      }
}

% gcc-8.0.0-alpha20171119 -O2 -ftree-loop-if-convert -ftree-parallelize-loops=2
-c harzrp6v.c
during GIMPLE pass: cunroll
harzrp6v.c: In function 'it':
harzrp6v.c:4:1: internal compiler error: Segmentation fault
 it (int zy, short int el)
 ^~
0xc6c84f crash_signal
       
/var/tmp/portage/sys-devel/gcc-8.0.0_alpha20171119/work/gcc-8-20171119/gcc/toplev.c:325
0xd1ce15 tree_check(tree_node*, char const*, int, char const*, tree_code)
       
/var/tmp/portage/sys-devel/gcc-8.0.0_alpha20171119/work/gcc-8-20171119/gcc/tree.h:3089
0xd1ce15 instantiate_scev_name
       
/var/tmp/portage/sys-devel/gcc-8.0.0_alpha20171119/work/gcc-8-20171119/gcc/tree-scalar-evolution.c:2359
0xd1dae5 instantiate_scev_convert
       
/var/tmp/portage/sys-devel/gcc-8.0.0_alpha20171119/work/gcc-8-20171119/gcc/tree-scalar-evolution.c:2611
0xd1d36f instantiate_scev_r
       
/var/tmp/portage/sys-devel/gcc-8.0.0_alpha20171119/work/gcc-8-20171119/gcc/tree-scalar-evolution.c:2746
0xd1dd1f resolve_mixers(loop*, tree_node*, bool*)
       
/var/tmp/portage/sys-devel/gcc-8.0.0_alpha20171119/work/gcc-8-20171119/gcc/tree-scalar-evolution.c:2842
0xd1fe88 analyze_scalar_evolution_in_loop
       
/var/tmp/portage/sys-devel/gcc-8.0.0_alpha20171119/work/gcc-8-20171119/gcc/tree-scalar-evolution.c:2210
0xd1ff95 simple_iv_with_niters(loop*, loop*, tree_node*, affine_iv*,
tree_node**, bool)
       
/var/tmp/portage/sys-devel/gcc-8.0.0_alpha20171119/work/gcc-8-20171119/gcc/tree-scalar-evolution.c:3325
0xd857d4 number_of_iterations_exit_assumptions(loop*, edge_def*,
tree_niter_desc*, gcond**, bool)
       
/var/tmp/portage/sys-devel/gcc-8.0.0_alpha20171119/work/gcc-8-20171119/gcc/tree-ssa-loop-niter.c:2358
0xd85b81 number_of_iterations_exit_assumptions(loop*, edge_def*,
tree_niter_desc*, gcond**, bool)
       
/var/tmp/portage/sys-devel/gcc-8.0.0_alpha20171119/work/gcc-8-20171119/gcc/tree-ssa-loop-niter.c:2455
0xd85b81 number_of_iterations_exit(loop*, edge_def*, tree_niter_desc*, bool,
bool)
       
/var/tmp/portage/sys-devel/gcc-8.0.0_alpha20171119/work/gcc-8-20171119/gcc/tree-ssa-loop-niter.c:2442
0xd1ba7d number_of_latch_executions(loop*)
       
/var/tmp/portage/sys-devel/gcc-8.0.0_alpha20171119/work/gcc-8-20171119/gcc/tree-scalar-evolution.c:2902
0xd875df estimate_numbers_of_iterations(loop*)
       
/var/tmp/portage/sys-devel/gcc-8.0.0_alpha20171119/work/gcc-8-20171119/gcc/tree-ssa-loop-niter.c:3914
0xd87d27 estimate_numbers_of_iterations(function*)
       
/var/tmp/portage/sys-devel/gcc-8.0.0_alpha20171119/work/gcc-8-20171119/gcc/tree-ssa-loop-niter.c:4149
0xd67a51 tree_unroll_loops_completely(bool, bool)
       
/var/tmp/portage/sys-devel/gcc-8.0.0_alpha20171119/work/gcc-8-20171119/gcc/tree-ssa-loop-ivcanon.c:1367
0xd67d0d execute
       
/var/tmp/portage/sys-devel/gcc-8.0.0_alpha20171119/work/gcc-8-20171119/gcc/tree-ssa-loop-ivcanon.c:1525

Reply via email to