https://gcc.gnu.org/bugzilla/show_bug.cgi?id=118182
--- Comment #8 from Alexandre Oliva <aoliva at gcc dot gnu.org> --- The problem is that the @pred_broadcast<mode> pattern expands to _zvfh insns even when _zero or _imm would do. The scalar constant gets allocated to a register, and vec_duplicated in the pred_broadcast insn, only to be substituted by the late combine pass after register allocation. Since gcc-14 lacks the late combine passes, the substitution doesn't occur. I'm testing an improvement to the expander that fixes the new failure in gcc-14, and that avoids wasting a register in gcc-15.