What is the best way to prevent gcc putting data at the last 4 bytes of flash?
I've got some old code built with gcc 4.3.2. That puts the initialization data in flash at the end of the code section. This is good, since it leaves the end of flash free, which the program uses as a known location for a serial number, added at programming time. Unfortunately, our standard build environment for legacy code is gcc 4.3.3, which by default puts the initialization data at the end of flash, levaing a space between it and the end of the code section.
I'd like to move the .data section, or block out the last 4 bytes of flash, or do something generic so that the program can be compiled with something other than gcc 4.3.2.