https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63281
--- Comment #3 from Alan Modra <amodra at gmail dot com> --- Curiously, trunk + patch1 gives better usage of registers (only r31 of non-volatile regs used) and find some fusion opportunities. trunk+patch1+patch2 results in r27-r31 being used (r28-r31 for -mlra), and no fusion. Yet the two instruction sequences look very similar going into reload.