https://gcc.gnu.org/bugzilla/show_bug.cgi?id=125097
--- Comment #2 from GCC Commits <cvs-commit at gcc dot gnu.org> --- The master branch has been updated by Robin Dapp <[email protected]>: https://gcc.gnu.org/g:64d982984a07105adf028689623c41005b400bdb commit r17-588-g64d982984a07105adf028689623c41005b400bdb Author: Robin Dapp <[email protected]> Date: Wed May 13 20:39:13 2026 +0200 RISC-V: Guard 64-bit vec_extract. Currently, reduc-6.c fails on the trunk when compiling for 32 bit. We emit a pred_extract_first of a V2DImode during legitimization of a move. Normally, we would split that insn into two 32-bit extracts but this splitter needs to be able to create pseudos which it can't after reload. The insn here is created during reload when we can still create pseudos. This patch just piggybacks on the existing handling when no 64-bit vector elements are available (!TARGET_VECTOR_ELEN64). Thus, we don't emit 64-bit extracts and don't need to rely on splitting late. PR target/125097 gcc/ChangeLog: * config/riscv/riscv.cc (riscv_legitimize_move): Emit 32-bit vec_extracts right away.
