https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87902
--- Comment #2 from Segher Boessenkool <segher at gcc dot gnu.org> --- So why does it use r12 there if it could use r2? That's an RA problem. This is related to PR87708, in a way. prepare_shrinkwrap needs a good overhaul. Moving all copies down also *degrades* code quality, more often if you don't restrict it to the first BB.