https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63234
--- Comment #7 from Mikael Pettersson <mikpelinux at gmail dot com> --- The wrong-code started in the 4.7 dev cycle with r183328, a fix for a similar bug (PR50313) in 4.6. That fix was backported to 4.6 but doesn't trigger this PR there (I just re-checked with 4.6.4). The bug is masked on trunk by r211885, a generic missed-optimization tweak, and even earlier for Cortex-A9 by a costing tweak in r203828, but I doubt either of those actually fixes the underlying problem.