Hello,
The attached patch adds new option group -- OPTION_EGLIBC_BIG_MACROS -- to
EGLIBC. This option group does not enable or disable functionality, but
rather specifies if certain pieces of code should expand inline (through
macros) or use function calls instead.
This particular patch handles __libc_lock_* macros which tend to expand to
rather significant portions of code (usually, around 0.5KB per instance). For
example, on PowerPC wrapping this code into internal functions yields 1.5%
smaller libc.so.
The patch describes a rather automatic way of converting such macros into
functions, so it will be easy to use it as a reference for future similar
conversions.
Tested by build on powerpc in default and uClibc configurations.
OK to apply?