<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"><html><head><meta name="qrichtext" content="1" /><style type="text/css">p, li { white-space: pre-wrap; }</style></head><body style=" font-family:'Console'; font-size:12pt; font-weight:400; font-style:normal;">Dear Tim.<br>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"><br></p>You are absolutely right - my script on error puts bss section before data.<br>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"><br></p>Many thanks!!!<br>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"><br></p><p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"><br></p><p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"><br></p>On Thursday June 25 2009, Tim Cussins wrote:<br>
> Hi Leon,<br>
><br>
> On Thu, 2009-06-25 at 14:26 +0300, Leon Pollak wrote:<br>
> > Hello, all.<br>
> ><br>
> ><br>
> ><br>
> > Recently I made a small change in the following code:<br>
> > class cFoo {<br>
> > protected:<br>
> > uchar DataIn[MAX_DATA_LEN], DataOut[MAX_DATA_LEN];<br>
> > ..............<br>
> > };<br>
> ><br>
> ><br>
> ><br>
> ><br>
> > I changed MAX_DATA_LEN from 1000 to 300000.<br>
> ><br>
> ><br>
> ><br>
> ><br>
> > This resulted in 300000 growth of the BIN file which I produce by<br>
> > command:<br>
> > powerpc-rtems-objcopy -j .text -j .data -O binary app.elf app.bin<br>
><br>
> surely you'd see 2x that growth - you've got 2 member variables that<br>
> depend on MAX_DATA_LEN...<br>
><br>
> > Looking into the map file I see that the real addition of 300000 bytes<br>
> > resides in the .bss section, which seems to me correct.<br>
> > So, why the size of binary file depends on .bss section size?!?!<br>
><br>
> without seeing your linker script, perhaps section .bss is listed in<br>
> front of .data, and it's pushing up the LMA of .data - this would appear<br>
> as a giant section of zeros in your binary image, and the binary size<br>
> increase you're talking about...<br>
><br>
> > I tried to play with -j and -R parameters, but all imaginable<br>
> > combinations gave nothing - the output file size was exactly the same.<br>
><br>
> above explanation could account for this. AFAIK objcopy uses (quite<br>
> rightly) the LMA to position sections in the binary output.<br>
><br>
> > Many thanks ahead for any help.<br>
> > --<br>
> > Leon<br>
><br>
> Hope this provides some food for thought...<br>
> Tim<br>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"><br></p><p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"><br></p>-- <br>
Leon</p></body></html>