15218

Rob Landley rob at landley.net
Mon May 29 19:12:54 UTC 2006


> - ls: remove unused variable
> - dpkg.c, diff: use xstat
>   text    data     bss     dec     hex filename
> 848823    9100  645216 1503139  16efa3 busybox_old
> 848679    9100  645216 1502995  16ef13 busybox_unstripped
> bloatcheck is completely useless as it sees -79 for this, which is bogus.

Mine sees 68 bytes, and the asm dumps of those two functions (scripts/showasm) 
would seem to agree with it.  The problem you're seeing is that the nm output 
it knows how to interpret isn't everything.

Bloatcheck isn't checking all data types.  Specifically, I'd already noticed 
it isn't seeing strings, and the largest chunk of stuff removed by this patch 
is strings.  If you change the length of a string, bloatcheck doesn't notice.  
I don't know if the nm invocation it's doing apparently isn't producing that 
info, or it's getting filtered out.

This isn't the same thing as useless.  "My screwdriver can't pound in this 
nail.  Screwdrivers are useless."  It's just telling you how much smaller you 
made the _functions_.

I'll have a look at teaching it about strings...

Hmmm.  The nm output isn't showing this, but readelf is (the .rodata section, 
I believe.)  Strings apparently get lumped together into one big object, or 
some such.  It's not bloatcheck's fault, it's nm's.  Hmmm...  I wonder if 
readelf -s can do better?

Rob
-- 
Never bet against the cheap plastic solution.



More information about the busybox mailing list