[PATCH 2/2] (g)unzip: Optimize inflate_codes()

Joakim Tjernlund joakim.tjernlund at transmode.se
Mon Feb 8 21:55:15 UTC 2010


Joakim Tjernlund/Transmode wrote on 2010/02/08 22:52:11:
>
> Rob Landley <rob at landley.net> wrote on 2010/02/08 21:26:44:
> >
> > On Monday 08 February 2010 11:55:16 Joakim Tjernlund wrote:
> > > Ported the recent optimization from the Linux kernel.
> > > This will not perform as god as the kernel version as the
> > > code structure in busybox is different and I had to adopt
> > > the optimization to it.
> > >
> > > This has seen very little testing and is a RFC only at this point.
> > > The inflate speed increase in the kernel was 12-15% on ppc.
> > >
> > > Signed-off-by: Joakim Tjernlund <Joakim.Tjernlund at transmode.se>
> >
> > That looks like a fairly significant size increase.  Is it big enough to
> > justify a config option?  (This is why "make bloatcheck" exists...)
>
> function                                             old     new   delta
> inflate_codes                                        624     819    +195
> .rodata                                           131741  131755     +14
> ------------------------------------------------------------------------------
> (add/remove: 0/0 grow/shrink: 2/0 up/down: 209/0)             Total: 209 bytes
>    text    data     bss     dec     hex filename
>  705967    2137    9072  717176   af178 busybox_old
>  706176    2137    9072  717385   af249 busybox_unstripped

Left some debug in, the correct bloatcheck is:
function                                             old     new   delta
inflate_codes                                        624     791    +167
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 1/0 up/down: 167/0)             Total: 167 bytes
   text	   data	    bss	    dec	    hex	filename
 705967	   2137	   9072	 717176	  af178	busybox_old
 706134	   2137	   9072	 717343	  af21f	busybox_unstripped



More information about the busybox mailing list