
Dear Kim Phillips,
In message 20081124183714.07cf1670.kim.phillips@freescale.com you wrote:
I did not see this when I built before submitting my patch. It seems to build fine using ELDK version 4.1. I just tried building with 4.2 and am seeing the errors that you described. For some reason, the 4.2 build has about 48 extra bytes to it, and is once again putting me over the 4K bootstrap limit. I'm going to look into getting the size down, but that's a decent number of bytes to try to optimize out.
...
what was the 4.2 toolchain doing differently than the 4.1 toolchain? maybe that's an area worth looking into.
This area has been looked into before, carefully. The size increase results from a bug fix in GCC.
The GCC maintainers explained that this change was a bug-fix to the old compiler, the essence of the bug being that the ldmw/stmw should not be used when the sequence of registers is "broken" by the use of "-ffixed=" options and global register variables, as in the case of U-Boot. See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34903
Best regards,
Wolfgang Denk