https://gcc.gnu.org/bugzilla/show_bug.cgi?id=118248
--- Comment #17 from Stefan Schulze Frielinghaus <stefansf at gcc dot gnu.org> --- Meanwhile bisect stopped at r15-508-gad22c607f3e17f Prior that commit we have for a call riscv_block_move_straight() with length=4 that regs = XALLOCAVEC (rtx, length / delta); is not called with a negative size but zero, the remaining two for-loops are jumped over and the mop-up-if kicks in. If there is anything I can help with, just let me know. I will happily proxy "any" command you pass over ;-)