https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87902
--- Comment #4 from Segher Boessenkool <segher at gcc dot gnu.org> --- All instructions that depend on the new registers can start later, too, if you move all new registers down. If you move copies from hard registers down it is much worse: you are extending the lifetime of those hard regs so that nothing else can live there, but more likely, it will have to be spilled even.