https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105600
Bug ID: 105600 Summary: ICE with LTO when building Mumble from git on arm64 Product: gcc Version: 12.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: lto Assignee: unassigned at gcc dot gnu.org Reporter: sam at gentoo dot org CC: marxin at gcc dot gnu.org Target Milestone: --- Reported this downstream at https://bugs.gentoo.org/843974 initially. Apologies for not being able to give more information yet. I'm familiar with reducing "normal" ICEs but I'm getting stuck with how to get more info because of LTO. One issue is it seems like I can't find a way to keep all the temporary files required. The bug seems similar to bug 102067 (same stacktrace?). ICE occurs when building Mumble from their git repo (https://github.com/mumble-voip/mumble) at 4f50172c5c8bc7c425efb350377106d3e83a7e79. Needs LTO. Occurs on arm64 with GCC 11.3.0 and GCC 12.1.0. I've reduced it down to: ``` $ /usr/bin/c++ -freport-bug -flto=99 -o /dev/null -O2 -fsanitize=undefined -O3 -DNDEBUG -Wl,-z,relro -Wl,-z,now /root/mumble/build/src/tests/TestSettingsJSONSerialization/CMakeFiles/TestSettingsJSONSerialization.dir/TestSettingsJSONSerialization.cpp.o /root/mumble/build/src/tests/TestSettingsJSONSerialization/../../mumble/CMakeFiles/mumble_client_object_lib.dir/JSONSerialization.cpp.o during IPA pass: icf lto1: internal compiler error: Segmentation fault 0xb13af3 crash_signal /usr/src/debug/sys-devel/gcc-12.1.0/gcc-12.1.0/gcc/toplev.cc:322 0xdc3e64 varpool_node::get_constructor() /usr/src/debug/sys-devel/gcc-12.1.0/gcc-12.1.0/gcc/varpool.cc:300 0x15b8f53 ipa_icf::sem_variable::equals(ipa_icf::sem_item*, hash_map<symtab_node*, ipa_icf::sem_item*, simple_hashmap_traits<default_hash_traits<symtab_node*>, ipa_icf::sem_item*> >&) /usr/src/debug/sys-devel/gcc-12.1.0/gcc-12.1.0/gcc/ipa-icf.cc:1695 0x15b9f67 ipa_icf::sem_item_optimizer::subdivide_classes_by_equality(bool) /usr/src/debug/sys-devel/gcc-12.1.0/gcc-12.1.0/gcc/ipa-icf.cc:2732 0x15c0683 ipa_icf::sem_item_optimizer::execute() /usr/src/debug/sys-devel/gcc-12.1.0/gcc-12.1.0/gcc/ipa-icf.cc:2464 0x15c1d6f ipa_icf_driver /usr/src/debug/sys-devel/gcc-12.1.0/gcc-12.1.0/gcc/ipa-icf.cc:3600 0x15c1d6f ipa_icf::pass_ipa_icf::execute(function*) /usr/src/debug/sys-devel/gcc-12.1.0/gcc-12.1.0/gcc/ipa-icf.cc:3647 Please submit a full bug report, with preprocessed source. Please include the complete backtrace with any bug report. See <https://bugs.gentoo.org/> for instructions. lto-wrapper: fatal error: /usr/bin/c++ returned 1 exit status compilation terminated. /usr/lib/gcc/aarch64-unknown-linux-gnu/12.1.0/../../../../aarch64-unknown-linux-gnu/bin/ld: error: lto-wrapper failed collect2: error: ld returned 1 exit status ``` What more information do you need? I can give access to the environment if required. Cheers.