[Bug rtl-optimization/101086] New: ICE at -O2 and -O3 on x86_64-linux-gnu with "-ftracer -fvar-tracking-assignments -fsel-sched-pipelining -fselective-scheduling -fschedule-insns": in create_block_for_bookkeeping, at sel-sched.c:4537
zhendong.su at inf dot ethz.ch
gcc-bugzilla@gcc.gnu.org
Tue Jun 15 19:43:16 GMT 2021
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101086
Bug ID: 101086
Summary: ICE at -O2 and -O3 on x86_64-linux-gnu with "-ftracer
-fvar-tracking-assignments -fsel-sched-pipelining
-fselective-scheduling -fschedule-insns": in
create_block_for_bookkeeping, at sel-sched.c:4537
Product: gcc
Version: unknown
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: rtl-optimization
Assignee: unassigned at gcc dot gnu.org
Reporter: zhendong.su at inf dot ethz.ch
Target Milestone: ---
It seems to affect GCC 10.* and later.
[516] % gcctk -v
Using built-in specs.
COLLECT_GCC=gcctk
COLLECT_LTO_WRAPPER=/local/suz-local/software/local/gcc-trunk/libexec/gcc/x86_64-pc-linux-gnu/12.0.0/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: ../gcc-trunk/configure --disable-bootstrap
--prefix=/local/suz-local/software/local/gcc-trunk --enable-languages=c,c++
--disable-werror --enable-multilib --with-system-zlib
Thread model: posix
Supported LTO compression algorithms: zlib
gcc version 12.0.0 20210615 (experimental) [master revision
4602714382f:c4ce2fa5b57:6d43ec50966cafb339eb6a370a5d767a24f673e1] (GCC)
[517] %
[517] % gcctk -O2 -c -ftracer -fvar-tracking-assignments -fsel-sched-pipelining
-fselective-scheduling -fschedule-insns small.c
cc1: warning: var-tracking-assignments changes selective scheduling
during RTL pass: sched1
small.c: In function ‘main’:
small.c:12:1: internal compiler error: in create_block_for_bookkeeping, at
sel-sched.c:4537
12 | }
| ^
0xd63b4c create_block_for_bookkeeping
../../gcc-trunk/gcc/sel-sched.c:4537
0xd63b4c find_place_for_bookkeeping
../../gcc-trunk/gcc/sel-sched.c:4686
0xd63b4c generate_bookkeeping_insn
../../gcc-trunk/gcc/sel-sched.c:4786
0xd63b4c move_op_at_first_insn
../../gcc-trunk/gcc/sel-sched.c:6063
0xd6435d code_motion_path_driver
../../gcc-trunk/gcc/sel-sched.c:6657
0xd64c6b code_motion_process_successors
../../gcc-trunk/gcc/sel-sched.c:6342
0xd64c6b code_motion_path_driver
../../gcc-trunk/gcc/sel-sched.c:6608
0xd64c6b code_motion_process_successors
../../gcc-trunk/gcc/sel-sched.c:6342
0xd64c6b code_motion_path_driver
../../gcc-trunk/gcc/sel-sched.c:6608
0xd64c6b code_motion_process_successors
../../gcc-trunk/gcc/sel-sched.c:6342
0xd64c6b code_motion_path_driver
../../gcc-trunk/gcc/sel-sched.c:6608
0xd653e3 move_op
../../gcc-trunk/gcc/sel-sched.c:6702
0xd653e3 move_exprs_to_boundary
../../gcc-trunk/gcc/sel-sched.c:5223
0xd653e3 schedule_expr_on_boundary
../../gcc-trunk/gcc/sel-sched.c:5436
0xd6928b fill_insns
../../gcc-trunk/gcc/sel-sched.c:5578
0xd6ae60 schedule_on_fences
../../gcc-trunk/gcc/sel-sched.c:7353
0xd6ae60 sel_sched_region_2
../../gcc-trunk/gcc/sel-sched.c:7491
0xd6bd98 sel_sched_region_1
../../gcc-trunk/gcc/sel-sched.c:7533
0xd6d1f4 sel_sched_region(int)
../../gcc-trunk/gcc/sel-sched.c:7634
0xd6da89 run_selective_scheduling()
../../gcc-trunk/gcc/sel-sched.c:7720
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <https://gcc.gnu.org/bugs/> for instructions.
[518] %
[518] % cat small.c
extern int k(int);
int a, b;
int c(int d) { return d ? 0 : a; }
unsigned e(int d, int f) { return f < 0 ? d : d << f; }
int main() {
int h;
long i = 2412553438;
while (b)
if (k(c(e(h, i))))
i = 0;
return 0;
}
More information about the Gcc-bugs
mailing list