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

            Bug ID: 87874
           Summary: [8/9 Regression] ICE in simplify_subreg, at
                    simplify-rtx.c:6396
           Product: gcc
           Version: 8.0
            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-alpha20181028 snapshot (r265575) ICEs when compiling the following
snippet w/ -g -O1 -fgcse -fno-dce -fno-tree-ccp -fno-tree-coalesce-vars
-fno-tree-copy-prop -fno-tree-dce -fno-tree-dominator-opts -fno-tree-fre
-fno-tree-loop-optimize -fno-tree-sink:

int *vk;
int m2;
__int128 nb;

void
em (int u5, int fo, int s7)
{
  for (;;)
    {
      long int es;

      es = !!u5 ? (!!fo && !!m2) : fo;
      if (es == 0)
        if (nb == *vk)
          {
            const unsigned long int uint64_max = 18446744073709551615ul;
            __int128 ks = uint64_max / 2 + 1;

            while (s7 < 1)
              while (nb < 2)
                {
                  for (ks = 0; ks < 3; ++ks)
                    {
                    }

                  ++nb;
                }
          }
    }
}

% x86_64-unknown-linux-gnu-gcc-9.0.0-alpha20181028 -g -O1 -fgcse -fno-dce
-fno-tree-ccp -fno-tree-coalesce-vars -fno-tree-copy-prop -fno-tree-dce
-fno-tree-dominator-opts -fno-tree-fre -fno-tree-loop-optimize -fno-tree-sink
-c gq9xsx28.c
during RTL pass: vartrack
gq9xsx28.c: In function 'em':
gq9xsx28.c:30:1: internal compiler error: in simplify_subreg, at
simplify-rtx.c:6396
   30 | }
      | ^
0x65c30c simplify_subreg(machine_mode, rtx_def*, machine_mode, poly_int<1u,
unsigned long>)
       
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181028/work/gcc-9-20181028/gcc/simplify-rtx.c:6396
0xcb36d8 simplify_gen_subreg(machine_mode, rtx_def*, machine_mode, poly_int<1u,
unsigned long>)
       
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181028/work/gcc-9-20181028/gcc/simplify-rtx.c:6667
0xf911d6 vt_expand_loc_callback
       
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181028/work/gcc-9-20181028/gcc/var-tracking.c:8488
0x8f132c cselib_expand_value_rtx_1
       
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181028/work/gcc-9-20181028/gcc/cselib.c:1681
0x8f373e cselib_expand_value_rtx_cb(rtx_def*, bitmap_head*, int, rtx_def*
(*)(rtx_def*, bitmap_head*, int, void*), void*)
       
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181028/work/gcc-9-20181028/gcc/cselib.c:1562
0xf9162e vt_expand_var_loc_chain
       
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181028/work/gcc-9-20181028/gcc/var-tracking.c:8384
0xf9162e vt_expand_loc_callback
       
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181028/work/gcc-9-20181028/gcc/var-tracking.c:8547
0x8f13d6 cselib_expand_value_rtx_1
       
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181028/work/gcc-9-20181028/gcc/cselib.c:1716
0x8f373e cselib_expand_value_rtx_cb(rtx_def*, bitmap_head*, int, rtx_def*
(*)(rtx_def*, bitmap_head*, int, void*), void*)
       
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181028/work/gcc-9-20181028/gcc/cselib.c:1562
0xf9076c vt_expand_var_loc_chain
       
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181028/work/gcc-9-20181028/gcc/var-tracking.c:8384
0xf9076c vt_expand_1pvar
       
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181028/work/gcc-9-20181028/gcc/var-tracking.c:8660
0xf9076c emit_note_insn_var_location(variable**, emit_note_data*)
       
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181028/work/gcc-9-20181028/gcc/var-tracking.c:8714
0xf92973 void hash_table<variable_hasher,
xcallocator>::traverse_noresize<emit_note_data*,
&(emit_note_insn_var_location(variable**, emit_note_data*))>(emit_note_data*)
       
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181028/work/gcc-9-20181028/gcc/hash-table.h:973
0xf92973 void hash_table<variable_hasher,
xcallocator>::traverse<emit_note_data*,
&(emit_note_insn_var_location(variable**, emit_note_data*))>(emit_note_data*)
       
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181028/work/gcc-9-20181028/gcc/hash-table.h:994
0xf92973 emit_notes_for_changes
       
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181028/work/gcc-9-20181028/gcc/var-tracking.c:9074
0xf9d67c emit_notes_in_bb
       
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181028/work/gcc-9-20181028/gcc/var-tracking.c:9508
0xf9d67c vt_emit_notes
       
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181028/work/gcc-9-20181028/gcc/var-tracking.c:9567
0xf9dcc4 variable_tracking_main_1
       
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181028/work/gcc-9-20181028/gcc/var-tracking.c:10499
0xf9dcc4 variable_tracking_main()
       
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181028/work/gcc-9-20181028/gcc/var-tracking.c:10513
0xf9dcc4 execute
       
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181028/work/gcc-9-20181028/gcc/var-tracking.c:10550

Reply via email to