http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53735

Richard Earnshaw <rearnsha at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|---                         |WONTFIX

--- Comment #5 from Richard Earnshaw <rearnsha at gcc dot gnu.org> ---
Realistically, we're never going to be able to fix this.  You've tied the
compilers hands behind it's back and it's then unable to keep its balance when
you give it a push.

In Thumb1 code, when optimizing for space, you've got just r0-r6 available in
general (r7 is used for the frame pointer).  Your source code tries to use all
7 of them (a1[r0]-a4[r3], v1[r4], r5 and v3[r6]).  That just leaves r7 (the
frame pointer) for the compiler to use for everything, so it's no surprise that
things then fall apart.

Reply via email to