https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111533
Bug ID: 111533 Summary: [14 Regression] ICE: RTL check: expected code 'reg', have 'const_int' in rhs_regno, at rtl.h:1934 Product: gcc Version: 14.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: target Assignee: unassigned at gcc dot gnu.org Reporter: patrick at rivosinc dot com Target Milestone: --- Broken on trunk: r14-4211-g29862e21f6d Bisected to/Caused by: r14-3508-ge030af3e6f6 rv64gcv fails to build glibc with --enable-checking=rtl This same failure/backtrace shows up on rv32gc with testcases like gcc.target/riscv/rvv/autovec/reduc/reduc_call-1.c with --enable-checking=rtl. Backtrace (from run using r14-4211-g29862e21f6d): during RTL pass: vsetvl res_debug.c: In function '__dn_count_labels': res_debug.c:1050:1: internal compiler error: RTL check: expected code 'reg', have 'const_int' in rhs_regno, at rtl.h:1934 1050 | } | ^ 0x90a441 rtl_check_failed_code1(rtx_def const*, rtx_code, char const*, int, char const*) ../../../gcc/gcc/rtl.cc:770 0x941ad7 rhs_regno(rtx_def const*) ../../../gcc/gcc/rtl.h:1934 0x942458 rhs_regno(rtx_def const*) ../../../gcc/gcc/config/riscv/riscv-vsetvl.cc:314 0x942458 anticipatable_occurrence_p ../../../gcc/gcc/config/riscv/riscv-vsetvl.cc:348 0x942458 pass_vsetvl::compute_local_properties() ../../../gcc/gcc/config/riscv/riscv-vsetvl.cc:3215 0x1680d25 pass_vsetvl::vsetvl_fusion() ../../../gcc/gcc/config/riscv/riscv-vsetvl.cc:3438 0x1683590 pass_vsetvl::lazy_vsetvl() ../../../gcc/gcc/config/riscv/riscv-vsetvl.cc:4373 0x16837a7 pass_vsetvl::execute(function*) ../../../gcc/gcc/config/riscv/riscv-vsetvl.cc:4413 0x16837a7 pass_vsetvl::execute(function*) ../../../gcc/gcc/config/riscv/riscv-vsetvl.cc:4394 Please submit a full bug report, with preprocessed source (by using -freport-bug). Please include the complete backtrace with any bug report. See <https://gcc.gnu.org/bugs/> for instructions.