https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103547
Bug ID: 103547 Summary: [12 Regression] Bootstrap failure Product: gcc Version: 12.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: bootstrap Assignee: unassigned at gcc dot gnu.org Reporter: hjl.tools at gmail dot com CC: tamar.christina at arm dot com Target Milestone: --- Target: x86-64 On Linux/x86-64, r12-5775 failed to bootstrap when configured --with-arch=native --with-cpu=native --prefix=/usr/12.0.0 --enable-clocale=gnu --with-system-zlib --enable-shared --enable-cet --with-demangler-in-ld --enable-libmpx --with-multilib-list=m32,m64,mx32 --with-fpmath=sse where native == skylake-avx512: https://gcc.gnu.org/pipermail/gcc-regression/2021-December/075945.html In file included from ../../src-master/gcc/gimple-ssa-strength-reduction.c:37: In member function ‘hash_table<Descriptor, Lazy, Allocator>::value_type* hash_table<Descriptor, Lazy, Allocator>::alloc_entries(size_t) const [with Descriptor = hash_map<tree_node*, tree_node*>::hash_entry; bool Lazy = false; Allocator = xcallocator]’, inlined from ‘void hash_table<Descriptor, Lazy, Allocator>::expand() [with Descriptor = hash_map<tree_node*, tree_node*>::hash_entry; bool Lazy = false; Allocator = xcallocator]’ at ../../src-master/gcc/hash-table.h:802:40: ../../src-master/gcc/system.h:784:34: error: section type conflict with ‘void hash_table<Descriptor, Lazy, Allocator>::expand() [with Descriptor = hash_map<tree_node*, tree_node*>::hash_entry; bool Lazy = false; Allocator = xcallocator]’ 784 | ((void)(!(EXPR) ? fancy_abort (__FILE__, __LINE__, __FUNCTION__), 0 : 0)) | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../../src-master/gcc/hash-table.h:715:3: note: in expansion of macro ‘gcc_assert’ 715 | gcc_assert (nentries != NULL); | ^~~~~~~~~~ In file included from ../../src-master/gcc/coretypes.h:482, from ../../src-master/gcc/gimple-ssa-strength-reduction.c:38: ../../src-master/gcc/hash-table.h: In member function ‘void hash_table<Descriptor, Lazy, Allocator>::expand() [with Descriptor = hash_map<tree_node*, tree_node*>::hash_entry; bool Lazy = false; Allocator = xcallocator]’: ../../src-master/gcc/hash-table.h:779:1: note: ‘void hash_table<Descriptor, Lazy, Allocator>::expand() [with Descriptor = hash_map<tree_node*, tree_node*>::hash_entry; bool Lazy = false; Allocator = xcallocator]’ was declared here 779 | hash_table<Descriptor, Lazy, Allocator>::expand () | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /export/gnu/import/git/gcc-test-master-intel64-native/bld/./prev-gcc/xg++ -B/export/gnu/import/git/gcc-test-master-intel64-native/bld/./prev-gcc/ -B/usr/12.0.0/x86_64-pc-linux-gnu/bin/ -nostdinc++ -B/export/gnu/import/git/gcc-test-master-intel64-native/bld/prev-x86_64-pc-linux-gnu/libstdc++-v3/src/.libs -B/export/gnu/import/git/gcc-test-master-intel64-native/bld/prev-x86_64-pc-linux-gnu/libstdc++-v3/libsupc++/.libs -I/export/gnu/import/git/gcc-test-master-intel64-native/bld/prev-x86_64-pc-linux-gnu/libstdc++-v3/include/x86_64-pc-linux-gnu -I/export/gnu/import/git/gcc-test-master-intel64-native/bld/prev-x86_64-pc-linux-gnu/libstdc++-v3/include -I/export/gnu/import/git/gcc-test-master-intel64-native/src-master/libstdc++-v3/libsupc++ -L/export/gnu/import/git/gcc-test-master-intel64-native/bld/prev-x86_64-pc-linux-gnu/libstdc++-v3/src/.libs -L/export/gnu/import/git/gcc-test-master-intel64-native/bld/prev-x86_64-pc-linux-gnu/libstdc++-v3/libsupc++/.libs -fno-PIE -c -g -O2 -fno-checking -gtoggle -DIN_GCC -fno-exceptions -fno-rtti -fasynchronous-unwind-tables -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wno-error=format-diag -Wmissing-format-attribute -Woverloaded-virtual -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Werror -fno-common -DHAVE_CONFIG_H -I. -I. -I../../src-master/gcc -I../../src-master/gcc/. -I../../src-master/gcc/../include -I../../src-master/gcc/../libcpp/include -I../../src-master/gcc/../libcody -I../../src-master/gcc/../libdecnumber -I../../src-master/gcc/../libdecnumber/bid -I../libdecnumber -I../../src-master/gcc/../libbacktrace -o loop-invariant.o -MT loop-invariant.o -MMD -MP -MF ./.deps/loop-invariant.TPo ../../src-master/gcc/loop-invariant.c /export/gnu/import/git/gcc-test-master-intel64-native/bld/./prev-gcc/xg++ -B/export/gnu/import/git/gcc-test-master-intel64-native/bld/./prev-gcc/ -B/usr/12.0.0/x86_64-pc-linux-gnu/bin/ -nostdinc++ -B/export/gnu/import/git/gcc-test-master-intel64-native/bld/prev-x86_64-pc-linux-gnu/libstdc++-v3/src/.libs -B/export/gnu/import/git/gcc-test-master-intel64-native/bld/prev-x86_64-pc-linux-gnu/libstdc++-v3/libsupc++/.libs -I/export/gnu/import/git/gcc-test-master-intel64-native/bld/prev-x86_64-pc-linux-gnu/libstdc++-v3/include/x86_64-pc-linux-gnu -I/export/gnu/import/git/gcc-test-master-intel64-native/bld/prev-x86_64-pc-linux-gnu/libstdc++-v3/include -I/export/gnu/import/git/gcc-test-master-intel64-native/src-master/libstdc++-v3/libsupc++ -L/export/gnu/import/git/gcc-test-master-intel64-native/bld/prev-x86_64-pc-linux-gnu/libstdc++-v3/src/.libs -L/export/gnu/import/git/gcc-test-master-intel64-native/bld/prev-x86_64-pc-linux-gnu/libstdc++-v3/libsupc++/.libs -fno-PIE -c -g -O2 -fno-checking -gtoggle -DIN_GCC -fno-exceptions -fno-rtti -fasynchronous-unwind-tables -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wno-error=format-diag -Wmissing-format-attribute -Woverloaded-virtual -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Werror -fno-common -DHAVE_CONFIG_H -I. -I. -I../../src-master/gcc -I../../src-master/gcc/. -I../../src-master/gcc/../include -I../../src-master/gcc/../libcpp/include -I../../src-master/gcc/../libcody -I../../src-master/gcc/../libdecnumber -I../../src-master/gcc/../libdecnumber/bid -I../libdecnumber -I../../src-master/gcc/../libbacktrace -o loop-iv.o -MT loop-iv.o -MMD -MP -MF ./.deps/loop-iv.TPo ../../src-master/gcc/loop-iv.c /export/gnu/import/git/gcc-test-master-intel64-native/bld/./prev-gcc/xg++ -B/export/gnu/import/git/gcc-test-master-intel64-native/bld/./prev-gcc/ -B/usr/12.0.0/x86_64-pc-linux-gnu/bin/ -nostdinc++ -B/export/gnu/import/git/gcc-test-master-intel64-native/bld/prev-x86_64-pc-linux-gnu/libstdc++-v3/src/.libs -B/export/gnu/import/git/gcc-test-master-intel64-native/bld/prev-x86_64-pc-linux-gnu/libstdc++-v3/libsupc++/.libs -I/export/gnu/import/git/gcc-test-master-intel64-native/bld/prev-x86_64-pc-linux-gnu/libstdc++-v3/include/x86_64-pc-linux-gnu -I/export/gnu/import/git/gcc-test-master-intel64-native/bld/prev-x86_64-pc-linux-gnu/libstdc++-v3/include -I/export/gnu/import/git/gcc-test-master-intel64-native/src-master/libstdc++-v3/libsupc++ -L/export/gnu/import/git/gcc-test-master-intel64-native/bld/prev-x86_64-pc-linux-gnu/libstdc++-v3/src/.libs -L/export/gnu/import/git/gcc-test-master-intel64-native/bld/prev-x86_64-pc-linux-gnu/libstdc++-v3/libsupc++/.libs -fno-PIE -c -g -O2 -fno-checking -gtoggle -DIN_GCC -fno-exceptions -fno-rtti -fasynchronous-unwind-tables -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wno-error=format-diag -Wmissing-format-attribute -Woverloaded-virtual -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Werror -fno-common -DHAVE_CONFIG_H -I. -I. -I../../src-master/gcc -I../../src-master/gcc/. -I../../src-master/gcc/../include -I../../src-master/gcc/../libcpp/include -I../../src-master/gcc/../libcody -I../../src-master/gcc/../libdecnumber -I../../src-master/gcc/../libdecnumber/bid -I../libdecnumber -I../../src-master/gcc/../libbacktrace -o loop-unroll.o -MT loop-unroll.o -MMD -MP -MF ./.deps/loop-unroll.TPo ../../src-master/gcc/loop-unroll.c /export/gnu/import/git/gcc-test-master-intel64-native/bld/./prev-gcc/xg++ -B/export/gnu/import/git/gcc-test-master-intel64-native/bld/./prev-gcc/ -B/usr/12.0.0/x86_64-pc-linux-gnu/bin/ -nostdinc++ -B/export/gnu/import/git/gcc-test-master-intel64-native/bld/prev-x86_64-pc-linux-gnu/libstdc++-v3/src/.libs -B/export/gnu/import/git/gcc-test-master-intel64-native/bld/prev-x86_64-pc-linux-gnu/libstdc++-v3/libsupc++/.libs -I/export/gnu/import/git/gcc-test-master-intel64-native/bld/prev-x86_64-pc-linux-gnu/libstdc++-v3/include/x86_64-pc-linux-gnu -I/export/gnu/import/git/gcc-test-master-intel64-native/bld/prev-x86_64-pc-linux-gnu/libstdc++-v3/include -I/export/gnu/import/git/gcc-test-master-intel64-native/src-master/libstdc++-v3/libsupc++ -L/export/gnu/import/git/gcc-test-master-intel64-native/bld/prev-x86_64-pc-linux-gnu/libstdc++-v3/src/.libs -L/export/gnu/import/git/gcc-test-master-intel64-native/bld/prev-x86_64-pc-linux-gnu/libstdc++-v3/libsupc++/.libs -fno-PIE -c -g -O2 -fno-checking -gtoggle -DIN_GCC -fno-exceptions -fno-rtti -fasynchronous-unwind-tables -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wno-error=format-diag -Wmissing-format-attribute -Woverloaded-virtual -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Werror -fno-common -DHAVE_CONFIG_H -I. -I. -I../../src-master/gcc -I../../src-master/gcc/. -I../../src-master/gcc/../include -I../../src-master/gcc/../libcpp/include -I../../src-master/gcc/../libcody -I../../src-master/gcc/../libdecnumber -I../../src-master/gcc/../libdecnumber/bid -I../libdecnumber -I../../src-master/gcc/../libbacktrace -o lower-subreg.o -MT lower-subreg.o -MMD -MP -MF ./.deps/lower-subreg.TPo ../../src-master/gcc/lower-subreg.c make[6]: *** [Makefile:1142: gimple-ssa-strength-reduction.o] Error 1 make[6]: *** Waiting for unfinished jobs.... In file included from ../../src-master/gcc/coretypes.h:474, from ../../src-master/gcc/expmed.c:26: In function ‘poly_uint16 mode_to_bytes(machine_mode)’, inlined from ‘typename if_nonpoly<typename T::measurement_type>::type GET_MODE_SIZE(const T&) [with T = scalar_int_mode]’ at ../../src-master/gcc/machmode.h:647:24, inlined from ‘rtx_def* emit_store_flag_1(rtx, rtx_code, rtx, rtx, machine_mode, int, int, machine_mode)’ at ../../src-master/gcc/expmed.c:5724:56: ../../src-master/gcc/machmode.h:550:49: warning: ‘*(unsigned int*)((char*)&int_mode + offsetof(scalar_int_mode, scalar_int_mode::m_mode))’ may be used uninitialized in this function [-Wmaybe-uninitialized] 550 | ? mode_size_inline (mode) : mode_size[mode]); | ^~~~ ../../src-master/gcc/expmed.c: In function ‘rtx_def* emit_store_flag_1(rtx, rtx_code, rtx, rtx, machine_mode, int, int, machine_mode)’: ../../src-master/gcc/expmed.c:5653:19: note: ‘*(unsigned int*)((char*)&int_mode + offsetof(scalar_int_mode, scalar_int_mode::m_mode))’ was declared here 5653 | scalar_int_mode int_mode; | ^~~~~~~~ rm gfdl.pod gcc.pod gfortran.pod gcov-dump.pod gcov-tool.pod fsf-funding.pod gpl.pod cpp.pod gcov.pod lto-dump.pod make[6]: Leaving directory '/export/gnu/import/git/gcc-test-master-intel64-native/bld/gcc' make[5]: *** [Makefile:4955: all-stage2-gcc] Error 2 make[5]: Leaving directory '/export/gnu/import/git/gcc-test-master-intel64-native/bld' make[4]: *** [Makefile:26026: stage2-bubble] Error 2 make[4]: Leaving directory '/export/gnu/import/git/gcc-test-master-intel64-native/bld' make[3]: *** [Makefile:26238: bootstrap] Error 2 make[3]: Leaving directory '/export/gnu/import/git/gcc-test-master-intel64-native/bld' Command exited with non-zero status 2 7778.01user 433.46system 20:27.18elapsed 669%CPU (0avgtext+0avgdata 1087728maxresident)k 0inputs+9000224outputs (804major+79453737minor)pagefaults 0swaps make[2]: *** [Makefile:309: bootstrap] Error 2 r12-5771 is OK. This is triggered by r12-5772: commit 06f2e7d49fc6341ea0128ccd83fd13705dd2c523 Author: Tamar Christina <tamar.christ...@arm.com> Date: Fri Dec 3 15:25:44 2021 +0000 sve: combine nested if predicates The following example