This is the mail archive of the crossgcc@sourceware.org mailing list for the crossgcc project.
See the CrossGCC FAQ for lots more information.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
On 30 March 2006 15:33, johnmc@sidsa.es wrote: > hey Dave Hi John, [ You posted this reply only to me and forgot to Cc the list. It's always better to keep the thread on the mailing list, because a) if I get something wrong in the discussion someone will notice and correct me before you get a false understanding, and b) it all gets stored in the list archive and then if someone has the same (or a similar) problem in the future they'll be able to find our conversation and any solution with a websearch. I've added it back in to the Cc. ] > As I understand the .bss section is data that can be modified and since > the application program (at least parts of it ) are running in Flash I > thought it necessary to re-locate the .bss section to RAM so that the data > in it can be modified by code running in FLASH - or have I missed > something - I will be happy if you prove me wrong as leaving the .bss > section in Flash would make my life a whole lot easier. There's one vital fact you don't know about .bss: It's /all/ zeros! Always, at startup, the /entire/ bss section is zeros; the whole purpose of it is that the compiler puts all the zero-initialised variables in there. Since the content is always known to be all zeros, the object file doesn't actually include a .bss section at all; it just has a header to tell the linker/loader how big it needs to be. So, you don't even need to /have/ the .bss section at all in your flash. Just write a memset call in your early startup code to zero out the entire bss region. cheers, DaveK -- Can't think of a witty .sigline today.... -- For unsubscribe information see http://sourceware.org/lists.html#faq
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |