https://gcc.gnu.org/bugzilla/show_bug.cgi?id=45335
Andrew Pinski <pinskia at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Known to work| |14.0, 7.3.0 Status|NEW |RESOLVED Resolution|--- |FIXED Known to fail| |4.6.4, 5.4.0 Target Milestone|--- |7.0 --- Comment #2 from Andrew Pinski <pinskia at gcc dot gnu.org> --- 6.3.0 produced: sub r1, r4, #16 ldr r4, [r4, #-4] ldr r0, .L3+4 ldm r1, {r1, r2, r3} 5.4.0 produced: sub r1, r4, #16 ldr r4, [r4, #-4] ldr r0, .L3+4 ldmia r1, {r1, r2, r3} 7.40 produced: ldrd r2, r3, [r4, #-12] ldr r1, [r4, #-16] ldrd r4, r5, [r4, #-4] ldr r0, .L4+4 strd r4, r5, [sp] Which was changed by r7-4653-g2fe3721128b991 or r7-991-g37923729c5ab01 . The ldrd support was added originally with r0-122648-g4542a38a21fea5 (for GCC 4.9.0). So closing as fixed.