Re: [GIT] kbuild/lto changes for 3.15-rc1

Sam Ravnborg
2014-04-15T11:19:43Z

>
> And while the code size reduction is less for MIPS than what others have
> reported for their platforms (I'm still investigating) is still is enough
> that embedded developers would commit murder for.

I have experimented a little with a patch that links all of vmlinux in one step.
I compared the text size of vmlinux without and with -ffunction-sections.

With a defconfig build on x86 (32 bit) I got following results:

size difference
singlelink 10266506
function-sections 9487369 779137 7,5%

So this is a reduction of ~800 kb by enabling -ffunction-sections which
allows the linker to throw away unused sections.

I have not boot tested the kernel so chances are that too much was thrown out by the linker.
But this is an option that has much smaller cost to use than lto.
And seems to benefit nicely in size.

I have not tried this wihtout my singlelink patch - but I assume similar results.
[My dev box is an Intel atom - so things are slow to build]

Sam