[Bug rtl-optimization/85410] ICE in create_block_for_bookkeeping, at sel-sched.c:4563

2023-07-02 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85410

--- Comment #7 from Andrew Pinski  ---
*** Bug 110525 has been marked as a duplicate of this bug. ***

[Bug rtl-optimization/85410] ICE in create_block_for_bookkeeping, at sel-sched.c:4563

2023-07-02 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85410

Andrew Pinski  changed:

   What|Removed |Added

 CC||19373742 at buaa dot edu.cn

--- Comment #6 from Andrew Pinski  ---
*** Bug 110517 has been marked as a duplicate of this bug. ***

[Bug rtl-optimization/85410] ICE in create_block_for_bookkeeping, at sel-sched.c:4563

2022-11-08 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85410

Andrew Pinski  changed:

   What|Removed |Added

 CC||gs...@t-online.de

--- Comment #5 from Andrew Pinski  ---
*** Bug 99347 has been marked as a duplicate of this bug. ***

[Bug rtl-optimization/85410] ICE in create_block_for_bookkeeping, at sel-sched.c:4563

2022-11-08 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85410

Andrew Pinski  changed:

   What|Removed |Added

 CC||zhendong.su at inf dot ethz.ch

--- Comment #4 from Andrew Pinski  ---
*** Bug 101086 has been marked as a duplicate of this bug. ***

[Bug rtl-optimization/85410] ICE in create_block_for_bookkeeping, at sel-sched.c:4563

2018-10-27 Thread asolokha at gmx dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85410

--- Comment #3 from Arseny Solokha  ---
Testcase from #c2 doesn't fail for me anymore w/ the current trunk snapshot (as
of r265361), but the following one does:

int py, up;

void
ro (int *tr, int et)
{
  while (et < 1)
{
  int s7 = !!*tr ? 0 : py;

  if (s7 != 0)
{
}
  else
{
  up /= 2;

  if (py * py == 0)
tr = 
}

  ++et;
}
}

% x86_64-unknown-linux-gnu-gcc-9.0.0-alpha20181021 -O1 -fschedule-insns
-fsel-sched-pipelining -fselective-scheduling -fvar-tracking-assignments
-fno-if-conversion -fno-tree-loop-im -w -c ebmjprna.c
during RTL pass: sched1
ebmjprna.c: In function 'ro':
ebmjprna.c:23:1: internal compiler error: in create_block_for_bookkeeping, at
sel-sched.c:4563
   23 | }
  | ^
0x65a9e8 create_block_for_bookkeeping
   
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181021/work/gcc-9-20181021/gcc/sel-sched.c:4563
0x65a9e8 find_place_for_bookkeeping
   
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181021/work/gcc-9-20181021/gcc/sel-sched.c:4700
0x65a9e8 generate_bookkeeping_insn
   
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181021/work/gcc-9-20181021/gcc/sel-sched.c:4800
0x65a9e8 move_op_at_first_insn
   
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181021/work/gcc-9-20181021/gcc/sel-sched.c:6077
0xc9016c code_motion_path_driver
   
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181021/work/gcc-9-20181021/gcc/sel-sched.c:6669
0xc90516 code_motion_process_successors
   
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181021/work/gcc-9-20181021/gcc/sel-sched.c:6356
0xc90516 code_motion_path_driver
   
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181021/work/gcc-9-20181021/gcc/sel-sched.c:6622
0xc90516 code_motion_process_successors
   
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181021/work/gcc-9-20181021/gcc/sel-sched.c:6356
0xc90516 code_motion_path_driver
   
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181021/work/gcc-9-20181021/gcc/sel-sched.c:6622
0xc93292 move_op
   
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181021/work/gcc-9-20181021/gcc/sel-sched.c:6714
0xc93292 move_exprs_to_boundary
   
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181021/work/gcc-9-20181021/gcc/sel-sched.c:5237
0xc93292 schedule_expr_on_boundary
   
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181021/work/gcc-9-20181021/gcc/sel-sched.c:5450
0xc951cc fill_insns
   
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181021/work/gcc-9-20181021/gcc/sel-sched.c:5592
0xc951cc schedule_on_fences
   
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181021/work/gcc-9-20181021/gcc/sel-sched.c:7366
0xc951cc sel_sched_region_2
   
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181021/work/gcc-9-20181021/gcc/sel-sched.c:7504
0xc96a56 sel_sched_region_1
   
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181021/work/gcc-9-20181021/gcc/sel-sched.c:7546
0xc9822e sel_sched_region(int)
   
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181021/work/gcc-9-20181021/gcc/sel-sched.c:7647
0xc9822e sel_sched_region(int)
   
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181021/work/gcc-9-20181021/gcc/sel-sched.c:7632
0xc99141 run_selective_scheduling()
   
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181021/work/gcc-9-20181021/gcc/sel-sched.c:7733
0xc78edd rest_of_handle_sched
   
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181021/work/gcc-9-20181021/gcc/sched-rgn.c:3718

[Bug rtl-optimization/85410] ICE in create_block_for_bookkeeping, at sel-sched.c:4563

2018-04-27 Thread asolokha at gmx dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85410

--- Comment #2 from Arseny Solokha  ---
Here's another snippet. gcc-8.0.0-alpha20180422 snapshot (r259553) w/ r259563
applied ICEs when compiling it for x86_64 w/ -O2 (-O3, -Os)
-ftree-slp-vectorize -fschedule-insns -fsel-sched-pipelining
-fselective-scheduling -fvar-tracking-assignments -fno-tree-pre -fno-tree-dce
-fno-tree-ch -fno-move-loop-invariants:

int ce, jq;

int
vc (void)
{
  int g4 = 0;

  return g4;
}

void
sg (void)
{
  while (jq < 2)
{
  int tv[] = { 1, 0, 0, 0, 0, };

  if (jq == 0)
{
}
  else
while (ce > 0)
  ce = 0;

  jq = vc ();
}
}

% x86_64-pc-linux-gnu-gcc-8.0.0-alpha20180422 -O2 -ftree-slp-vectorize
-fschedule-insns -fsel-sched-pipelining -fselective-scheduling
-fvar-tracking-assignments -fno-tree-pre -fno-tree-dce -fno-tree-ch
-fno-move-loop-invariants -w -c gbhm444y.c
during RTL pass: sched1
gbhm444y.c: In function 'sg':
gbhm444y.c:27:1: internal compiler error: in create_block_for_bookkeeping, at
sel-sched.c:4563
 }
 ^
0x64e07f create_block_for_bookkeeping
   
/var/tmp/portage/sys-devel/gcc-8.0.0_alpha20180422/work/gcc-8-20180422/gcc/sel-sched.c:4563
0x64e07f find_place_for_bookkeeping
   
/var/tmp/portage/sys-devel/gcc-8.0.0_alpha20180422/work/gcc-8-20180422/gcc/sel-sched.c:4700
0x64e07f generate_bookkeeping_insn
   
/var/tmp/portage/sys-devel/gcc-8.0.0_alpha20180422/work/gcc-8-20180422/gcc/sel-sched.c:4800
0x64e07f move_op_at_first_insn
   
/var/tmp/portage/sys-devel/gcc-8.0.0_alpha20180422/work/gcc-8-20180422/gcc/sel-sched.c:6077
0xc6774c code_motion_path_driver
   
/var/tmp/portage/sys-devel/gcc-8.0.0_alpha20180422/work/gcc-8-20180422/gcc/sel-sched.c:6669
0xc67ad6 code_motion_process_successors
   
/var/tmp/portage/sys-devel/gcc-8.0.0_alpha20180422/work/gcc-8-20180422/gcc/sel-sched.c:6356
0xc67ad6 code_motion_path_driver
   
/var/tmp/portage/sys-devel/gcc-8.0.0_alpha20180422/work/gcc-8-20180422/gcc/sel-sched.c:6622
0xc67ad6 code_motion_process_successors
   
/var/tmp/portage/sys-devel/gcc-8.0.0_alpha20180422/work/gcc-8-20180422/gcc/sel-sched.c:6356
0xc67ad6 code_motion_path_driver
   
/var/tmp/portage/sys-devel/gcc-8.0.0_alpha20180422/work/gcc-8-20180422/gcc/sel-sched.c:6622
0xc67ad6 code_motion_process_successors
   
/var/tmp/portage/sys-devel/gcc-8.0.0_alpha20180422/work/gcc-8-20180422/gcc/sel-sched.c:6356
0xc67ad6 code_motion_path_driver
   
/var/tmp/portage/sys-devel/gcc-8.0.0_alpha20180422/work/gcc-8-20180422/gcc/sel-sched.c:6622
0xc68172 move_op
   
/var/tmp/portage/sys-devel/gcc-8.0.0_alpha20180422/work/gcc-8-20180422/gcc/sel-sched.c:6714
0xc68172 move_exprs_to_boundary
   
/var/tmp/portage/sys-devel/gcc-8.0.0_alpha20180422/work/gcc-8-20180422/gcc/sel-sched.c:5237
0xc68172 schedule_expr_on_boundary
   
/var/tmp/portage/sys-devel/gcc-8.0.0_alpha20180422/work/gcc-8-20180422/gcc/sel-sched.c:5450
0xc6c20c fill_insns
   
/var/tmp/portage/sys-devel/gcc-8.0.0_alpha20180422/work/gcc-8-20180422/gcc/sel-sched.c:5592
0xc6c20c schedule_on_fences
   
/var/tmp/portage/sys-devel/gcc-8.0.0_alpha20180422/work/gcc-8-20180422/gcc/sel-sched.c:7366
0xc6c20c sel_sched_region_2
   
/var/tmp/portage/sys-devel/gcc-8.0.0_alpha20180422/work/gcc-8-20180422/gcc/sel-sched.c:7504
0xc6d958 sel_sched_region_1
   
/var/tmp/portage/sys-devel/gcc-8.0.0_alpha20180422/work/gcc-8-20180422/gcc/sel-sched.c:7546
0xc6e1de sel_sched_region(int)
   
/var/tmp/portage/sys-devel/gcc-8.0.0_alpha20180422/work/gcc-8-20180422/gcc/sel-sched.c:7647
0xc6f0e8 run_selective_scheduling()
   
/var/tmp/portage/sys-devel/gcc-8.0.0_alpha20180422/work/gcc-8-20180422/gcc/sel-sched.c:7733

[Bug rtl-optimization/85410] ICE in create_block_for_bookkeeping, at sel-sched.c:4563

2018-04-24 Thread abel at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85410

Andrey Belevantsev  changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2018-04-24
 CC||abel at gcc dot gnu.org,
   ||amonakov at gcc dot gnu.org,
   ||jakub at gcc dot gnu.org
 Ever confirmed|0   |1

--- Comment #1 from Andrey Belevantsev  ---
Confirmed.  We hit an assert saying that the split block (which is supposed to
be empty) doesn't have any bb notes.  But it may have a NOTE_INSN_DELETED now
because there is the code emitting that when the bb only has debug insns.  It
is easy to relax the assert and properly merge bb notes list in this case.

So far so good, but then the df_verify assert hits late in IRA.  It is because
of the code that was added to rotate bb indexes to avoid debug/non-debug
differences around sel-sched.c:4585, there if (MAY_HAVE_DEBUG_INSNS) we do the
long list of sel-sched data structures exchanges but nobody takes care of df
structures.  There I can do a df_bb_refs_record for the changed bbs, but still
the reg_chain structures are bogus and we ICE in df_reg_chain_verify_unmarked. 
At this point I'm unclear what to do, thoughts?