Attention is currently required from: Jacob Garber, Michael Niewöhner.
Arthur Heymans has uploaded a new patch set (#16) to the change originally created by Jacob Garber. ( https://review.coreboot.org/c/coreboot/+/38989?usp=email )
Change subject: Kconfig,Makefile.inc: Add support for link time optimization ......................................................................
Kconfig,Makefile.inc: Add support for link time optimization
Link time optimization is a technique for whole-program optimization. Instead of doing code generation during compilation, the compiler saves its intermediate representation to the object files. During the final linking step, it will then merge all the object files together and perform optimizations on the entire program. This can often reduce the final binary size, but also may increase the total compilation time.
This patch introduces a Kconfig option for enabling link time optimization in coreboot. Due to the potential for breakage, this option is disabled by default, and would only be enabled per-board once it has been tested on hardware. Not all targets compile now, but early results are encouraging: using LTO leads to a ~13% decrease in stage size for QEMU i440fx and ~10% for the Thinkpad T500, and both targets boot successfully. Compile times for both are also about 10% faster.
Change-Id: I48c31ea8b1b57276125cffdac44c7c16642547ac Signed-off-by: Jacob Garber jgarber1@ualberta.ca --- M Makefile.mk M src/Kconfig 2 files changed, 12 insertions(+), 0 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/89/38989/16