[patch] 1.11.0.svn: compiler warnings when building for i386 arch

Bernhard Fischer rep.dot.nop at gmail.com
Fri May 16 04:16:49 PDT 2008


On Fri, May 16, 2008 at 12:59:46PM +0200, Cristian Ionescu-Idbohrn wrote:
>> -static void inline pop3_check(const char *fmt, const char *param)
>> +static ALWAYS_INLINE void pop3_check(const char *fmt, const char *param)
>>
>> This is unrelated change,
>
>I might.  The warning was about 'void' being placed in front of
>'inline'.  Minimal change would have been:
>
>-static void inline pop3_check(const char *fmt, const char *param)
>+static inline void pop3_check(const char *fmt, const char *param)
>
>Still, it seemed to me the 'standard' way (i.e. using ALWAYS_INLINE).

ALWAYS_INLINE is certainly non-standard for busybox.
We tend to trade speed for size. We once had a knob for (one of the)
decompressors to sacrifice some size in favour of improved speed.
>
>> and it increases code size:
>>
>> sendgetmail_main                                    1674    1700     +26
>
>Does that mean that all places where ALWAYS_INLINE (defined in
>include/platform.h) will lead to increased code size for the
>respective applets?

Almost always, yes. If you're absolutely sure that
it's called only once anyway then it's sometimes ok to be used.
See e.g. brctl where it's smaller to always inline it (at least IIRC)
since we can avoid the penalty imposed by the call-overhead (also see
the comment above those 4 funcs).


More information about the busybox mailing list