https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97502
Bug ID: 97502 Summary: [11 Regression] PGO bootstrap failure on s390x-linux with -march=z13 starting with r11-3426 Product: gcc Version: 11.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: bootstrap Assignee: unassigned at gcc dot gnu.org Reporter: jakub at gcc dot gnu.org Target Milestone: --- In profiledbootstrap on s390x-linux --with-arch=z13, I get an ICE during feedback compilation of s390.c: /home/nfs/jakub/rpmbuild/BUILD/gcc-11.0.0-20201019/obj-s390x-redhat-linux/./prev-gcc/xg++ -B/home/nfs/jakub/rpmbuild/BUILD/gcc-11.0.0-20201019/obj- s390x-redhat-linux/./prev-gcc/ -B/usr/s390x-redhat-linux/bin/ -nostdinc++ -B/home/nfs/jakub/rpmbuild/BUILD/gcc-11.0.0-20201019/obj-s390x-redhat-lin ux/prev-s390x-redhat-linux/libstdc++-v3/src/.libs -B/home/nfs/jakub/rpmbuild/BUILD/gcc-11.0.0-20201019/obj-s390x-redhat-linux/prev-s390x-redhat-lin ux/libstdc++-v3/libsupc++/.libs -I/home/nfs/jakub/rpmbuild/BUILD/gcc-11.0.0-20201019/obj-s390x-redhat-linux/prev-s390x-redhat-linux/libstdc++-v3/i nclude/s390x-redhat-linux -I/home/nfs/jakub/rpmbuild/BUILD/gcc-11.0.0-20201019/obj-s390x-redhat-linux/prev-s390x-redhat-linux/libstdc++-v3/include -I/home/nfs/jakub/rpmbuild/BUILD/gcc-11.0.0-20201019/libstdc++-v3/libsupc++ -L/home/nfs/jakub/rpmbuild/BUILD/gcc-11.0.0-20201019/obj-s390x-redhat -linux/prev-s390x-redhat-linux/libstdc++-v3/src/.libs -L/home/nfs/jakub/rpmbuild/BUILD/gcc-11.0.0-20201019/obj-s390x-redhat-linux/prev-s390x-redhat -linux/libstdc++-v3/libsupc++/.libs -fno-PIE -c -O2 -g -Wall -Wformat-security -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong - grecord-gcc-switches -march=z13 -mtune=z13 -fasynchronous-unwind-tables -fstack-clash-protection -fprofile-use -DIN_GCC -fno-exceptions -fno-rt ti -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 -DHAVE_CONFIG_H -I. -I. -I../../gcc -I../../gcc/. -I../../gcc/../in clude -I../../gcc/../libcpp/include -I../../gcc/../libdecnumber -I../../gcc/../libdecnumber/dpd -I../libdecnumber -I../../gcc/../libbacktrace -o s390.o -MT s390.o -MMD -MP -MF ./.deps/s390.TPo ../../gcc/config/s390/s390.c ... during RTL pass: expand ../../gcc/config/s390/s390.c: In function 'void s390_register_info()': ../../gcc/config/s390/s390.c:9761:1: internal compiler error: in do_store_flag, at expr.c:12394 9761 | s390_register_info () | ^~~~~~~~~~~~~~~~~~ 0x163e15d do_store_flag ../../gcc/expr.c:12394 0x163e959 expand_expr_real_2(separate_ops*, rtx_def*, machine_mode, expand_modifier) ../../gcc/expr.c:9627 0x16475f9 expand_expr_real_1(tree_node*, rtx_def*, machine_mode, expand_modifier, rtx_def**, bool) ../../gcc/expr.c:10171 0x16488b9 expand_expr_real(tree_node*, rtx_def*, machine_mode, expand_modifier, rtx_def**, bool) ../../gcc/expr.c:8486 0x1756145 expand_normal ../../gcc/expr.h:288 0x1756145 expand_vect_cond_optab_fn ../../gcc/internal-fn.c:2604 0x1756145 expand_VCONDU ../../gcc/internal-fn.def:144 0x14d085b expand_gimple_stmt ../../gcc/cfgexpand.c:3851 0x14d085b expand_gimple_basic_block ../../gcc/cfgexpand.c:5892 0x14d31ad execute ../../gcc/cfgexpand.c:6576 Please submit a full bug report, with preprocessed source if appropriate. I've managed to reduce it to a small self-contained testcase that fortunately doesn't even need PGO: extern char v[54]; void bar (char *); void foo (void) { int i; char c[32]; bar (c); for (i = 0; i < 32; i++) c[i] = c[i] && !v[i]; bar (c); } ICEs the same way with -O3 -march=z13 starting with r11-3426-g10843f8303509fcba880c6c05c08e4b4ccd24f36