On Monday, November 15, 2010 06:33:40 Mike Frysinger wrote:
> On Monday, November 15, 2010 05:54:07 Wolfgang Denk wrote:
> > Sebastien Carlier wrote:
> > > I just uploaded the revised patch here:
> > >   http://www.denx.de/wiki/pub/U-Boot/TooBigPatches/0001-Switch-from-
arch
> > >   iv e-libraries-to-partial-linking-v4.patch
> > > 
> > > Version 4:
> > >   Bring in Linux comment for cmd_link_o_target.
> > >   Fix drivers/qe/Makefile to build libqe.o, not qe.o.
> > > 
> > > I pulled the latest changes before making the patch and there was no
> > > conflict, but please let me know if you see anything wrong with it.
> > 
> > Thanks a lot.
> > 
> > I notice that the patch affects the size of the resulting U-Boot
> > images.
> > 
> > For example:
> > 
> > Configuring for MiniFAP - Board: TQM5200, Options: MINIFAP
> > 
> >    text    data     bss     dec     hex filename
> >  
> >  358144   35208  303248  696600   aa118 ./u-boot    before
> >  361340   35824  303332  700496   ab050 ./u-boot    after
> > 
> > -------------------------------
> > 
> >             Delta:   +3896 Bytes
> > 
> > For other boards it's only a few hundred bytes, but why do we see
> > such big increase here?
> 
> some of this is probably because of missing build system support.  there
> are some files which are always compiled when they shouldnt be but in the
> past, this wasnt a problem because they were stuck in an .a and the linker
> wouldnt pull them in since no one requested them.
> 
> on my side, i see this with at least these files:
> cmd_pcmcia.c
> file.c
> ldiv.c
> memsize.c
> rpx_pcmcia.c
> tqm8xx_pcmcia.c
> 
> although i'm still seeing a few hundred byte increase in my .text/.bss, but
> the symbol map is unchanged ...

some of this is simply due to change in linking order and the implicit padding 
in between each symbol for alignment requirements

you can check how much this adds with the attached script:
        $ ./align-padding u-boot .text | tail -n1
        586
        $ ./align-padding old/u-boot .text | tail -n1
        490

replace the '$7 == "3"' check with whatever section number you want to check.  
in my case, 3 is ".text".  i see a 96 byte change in my .text due to this, but 
i wouldnt blame this patch for it.  and similar changes for 
.data/.bss/.rodata.
-mike

Attachment: align-padding
Description: application/shellscript

Attachment: signature.asc
Description: This is a digitally signed message part.

_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot

Reply via email to