https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110800
Bug ID: 110800 Summary: [gcn] ICE (segfault) 'during RTL pass: jump' in delete_trivially_dead_insns -> count_reg_usage Product: gcc Version: 14.0 Status: UNCONFIRMED Keywords: ice-on-valid-code Severity: normal Priority: P3 Component: target Assignee: unassigned at gcc dot gnu.org Reporter: burnus at gcc dot gnu.org CC: grahams at gcc dot gnu.org Target Milestone: --- Target: amdgcn-amdhsa Testcase is test_target_PureVirDestr.cpp at https://github.com/SOLLVE/sollve_vv/pull/751 Simply go to any sollve_vv directory, run "wget" on https://raw.githubusercontent.com/SOLLVE/sollve_vv/a3be96d534124e744acc979e2e33b402a1b330cd/tests/5.2/unified_shared_mem/test_target_PureVirDestr.cpp And then compile, e.g. as follows. (Tested with mainline; comments in the pull request indicate that OG13 fails identically.) g++ -foffload-options=-march=gfx90a -fopenmp -I ompvv/ -DVERBOSE_MODE=1 test_target_PureVirDestr.cpp The segfault happens for: #0 0x00000000019175cc in count_reg_usage (x=<optimized out>, counts=0x2e618e0, dest=<optimized out>, incr=1) at gcc/rtl.h:1934 1934 return REG_CHECK (x)->regno; which is called (same function) as 1511 return XEXP (insn, 3); which is called in #2 0x000000000191c86b in delete_trivially_dead_insns (insns=<optimized out>, nreg=514) at gcc/cse.cc:7012 7012 count_reg_usage (insn, counts, NULL_RTX, 1); (gdb) p debug_rtx(insn) (insn 132 133 119 7 (set (reg:DI 508) (reg:DI -1)) "test_target_PureVirDestr.cpp":57:5 8 {*movdi_insn} (nil)) The ICE is: during RTL pass: jump test_target_PureVirDestr.cpp: In member function '__ct_base ': test_target_PureVirDestr.cpp:57:5: internal compiler error: Segmentation fault 57 | } | ^ 0x101ad9f crash_signal gcc/toplev.cc:314 0x7f463959408f ??? sysv/linux/x86_64/sigaction.c:0 0x19175cc count_reg_usage gcc/cse.cc:6748 0x19173ea count_reg_usage gcc/cse.cc:6788 0x191c86a delete_trivially_dead_insns(rtx_insn*, int) gcc/cse.cc:7012 0x18dc5c6 execute gcc/cfgcleanup.cc:3237 ... gcn mkoffload: fatal error: ../../install/bin/x86_64-none-linux-gnu-accel-amdgcn-amdhsa-gcc returned 1 exit status compilation terminated. lto-wrapper: fatal error: .../install/libexec/gcc/x86_64-none-linux-gnu/14.0.0//accel/amdgcn-amdhsa/mkoffload returned 1 exit status