On Mon, Dec 13, 2021 at 10:49:14PM +0000, Paul Cercueil wrote: > Allow CONFIG_LTO_CLANG to be enabled. The ThinLTO variant is not yet > supported. > > While this option allows to build a LTO'd kernel, the result kernel file > ends up being *bigger* than the non-LTO variant (about 3.6 MiB with LTO > vs. 3.1 MiB without with a ZSTD-compressed kernel). I believe this happens because the linker is able to inline more, which should make the code faster but makes it larger. I believe we limit the inlining threshold so that it is not too bad but maybe that could be further tuned. > Signed-off-by: Paul Cercueil <paul@xxxxxxxxxxxxxxx> Reviewed-by: Nathan Chancellor <nathan@xxxxxxxxxx> > --- > arch/mips/Kconfig | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig > index 0215dc1529e9..6987db8d5f64 100644 > --- a/arch/mips/Kconfig > +++ b/arch/mips/Kconfig > @@ -22,6 +22,7 @@ config MIPS > select ARCH_USE_QUEUED_RWLOCKS > select ARCH_USE_QUEUED_SPINLOCKS > select ARCH_SUPPORTS_HUGETLBFS if CPU_SUPPORTS_HUGEPAGES > + select ARCH_SUPPORTS_LTO_CLANG if CPU_LITTLE_ENDIAN > select ARCH_WANT_DEFAULT_TOPDOWN_MMAP_LAYOUT if MMU > select ARCH_WANT_IPC_PARSE_VERSION > select ARCH_WANT_LD_ORPHAN_WARN > -- > 2.33.0 > >