• Denys Vlasenko's avatar
    wavelan_cs: stop inlining largish static functions · 2aee82de
    Denys Vlasenko authored
    Hi John,
    
    Can you please take a look at this patch?
    
    drivers/net/wireless/wavelan_cs.c has unusually large number
    of static inline functions - 27.
    
    I looked through them and 20 of them do not seem to warrant inlining.
    Some are really big; others call mdelay(1) or busy-wait for a bit
    to be set in a hardware register - it's pointless
    to optimize such functions for speed.
    
    This patch removes "inline" from these static function
    (regardless of number of callsites - gcc nowadays auto-inlines
    statics with one callsite).
    
    Size difference for 32bit x86:
    
       text    data     bss     dec     hex filename
      17020     372       8   17400    43f8 linux-2.6-ALLYES/drivers/net/wireless/wavelan_cs.o
      14032     356       8   14396    383c linux-2.6.inline-ALLYES/drivers/net/wireless/wavelan_cs.o
    Signed-off-by: default avatarDenys Vlasenko <vda.linux@googlemail.com>
    --
    vda
    Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
    2aee82de
wavelan_cs.p.h 29.2 KB