https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106919
Matthias Klose <doko at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|WAITING |NEW --- Comment #2 from Matthias Klose <doko at gcc dot gnu.org> --- $ cat libgcov-merge.i int __gcov_merge_topn_n_counters; long __gcov_merge_topn___trans_tmp_1; void __gcov_merge_topn() { for (unsigned i = 0; i < __gcov_merge_topn_n_counters / 3; i++) { for (unsigned j ; __gcov_merge_topn___trans_tmp_1; ) ; } } doko@zelenka:~/gcc-snapshot-20220920$ cat libgcov-merge.i int __gcov_merge_topn_n_counters; long __gcov_merge_topn___trans_tmp_1; void __gcov_merge_topn() { for (unsigned i = 0; i < __gcov_merge_topn_n_counters / 3; i++) for (; __gcov_merge_topn___trans_tmp_1;) ; } $ /home/doko/gcc-snapshot-20220920/build/gcc/xgcc -B/home/doko/gcc-snapshot-20220920/build/gcc/ -c -march=z196 -m64 -mzarch -g -O2 libgcov-merge.i libgcov-merge.i during RTL pass: ce2 libgcov-merge.i: In function '__gcov_merge_topn': libgcov-merge.i:7:1: internal compiler error: RTL check: expected code 'set' or 'clobber', have 'if_then_else' in s390_rtx_costs, at config/s390/s390.cc:3672 7 | } | ^ 0x22c196b rtl_check_failed_code2(rtx_def const*, rtx_code, rtx_code, char const*, int, char const*) ../../src/gcc/rtl.cc:926 0x2af1f69 s390_rtx_costs ../../src/gcc/config/s390/s390.cc:3672 0x22e9ab9 rtx_cost(rtx_def*, machine_mode, rtx_code, int, bool) ../../src/gcc/rtlanal.cc:4601 0x22c3877 set_rtx_cost ../../src/gcc/rtl.h:2925 0x22f3eb5 seq_cost(rtx_insn const*, bool) ../../src/gcc/rtlanal.cc:5788 0x38ea2b5 default_noce_conversion_profitable_p(rtx_insn*, noce_if_info*) ../../src/gcc/ifcvt.cc:814 0x38f145f noce_try_cmove ../../src/gcc/ifcvt.cc:1864 0x38fc6d9 noce_process_if_block ../../src/gcc/ifcvt.cc:3964 0x38fe8b5 noce_find_if_block ../../src/gcc/ifcvt.cc:4521 0x38ff33b find_if_header ../../src/gcc/ifcvt.cc:4726 0x3903475 if_convert ../../src/gcc/ifcvt.cc:5873 0x390394d execute ../../src/gcc/ifcvt.cc:6026 Please submit a full bug report, with preprocessed source (by using -freport-bug). Please include the complete backtrace with any bug report.