https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86771
--- Comment #5 from Christophe Lyon <clyon at gcc dot gnu.org> --- I think in the "ok" version we have: add ip, sp, #60 ... ldm ip, {r0, r1} ... add r2, sp, #72 ldm r2, {r0, r1} in the "ko" version we have: ldr r1, [sp, #64] ... ldr r1, [sp, #76] So in the "ko" version we do not load r0