https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110800
Tobias Burnus <burnus at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Summary|[gcn] ICE (segfault) |[gcn] ICE (segfault)
|'during RTL pass: jump' in |'during RTL pass: jump' in
|delete_trivially_dead_insns |delete_trivially_dead_insns
|-> count_reg_usage |-> count_reg_usage when C++
| |exceptions are enabled +
| |used
--- Comment #1 from Tobias Burnus <burnus at gcc dot gnu.org> ---
The ICE is turned into plenty of linker errors (such as 'undefined symbol:
operator delete[](void*)') when compiling with:
-fno-exceptions
It seems as if something goes wrong when exceptions are encountered. Still, an
ICE is wrong.
For the sister testcase, test_target_struct_obj_access.cpp (same pull request),
it fails with tons of:
cc45cyOP.mkoffload.2.s:2601:1: error: symbol '.LEHE1' is already defined
That's actually how I found the -fno-exception as LEHE is added in
gcc/except.cc: ASM_GENERATE_INTERNAL_LABEL (reg_start_lab, "LEHB",
call_site_base + i);
gcc/final.cc: ASM_OUTPUT_DEBUG_LABEL (asm_out_file, "LEHB",