https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105778
--- Comment #3 from Uroš Bizjak <ubizjak at gmail dot com> --- Comment on attachment 53058 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=53058 gcc13-pr105778.patch >+ operands[2] = gen_lowpart (QImode, operands[2]); We have learned that pre-reload splits need to move operand to a register before calling gen_lowpart. >+ emit_insn (gen_ashl<dwi>3_doubleword (operands[0], operands[1], >+ operands[2])); >+ DONE;