Re: [PATCH 0/3] MIPS: Add support for LTO

From: Nathan Chancellor
Date: Tue Dec 14 2021 - 13:11:18 EST


On Mon, Dec 13, 2021 at 10:49:11PM +0000, Paul Cercueil wrote:
> Hi,
>
> With this set of patches, it becomes possible to build a LTO'd kernel
> with LLVM/Clang on MIPS.
>
> This was tested on a Ingenic JZ4770 based system. It requires the
> linking step of the vmlinuz.bin to be done with binutils' LD instead of
> LLVM's ld.lld [1], but the vmlinuz ELF itself can be completely built
> with LLVM.

The patches seem fine to me but it might be nice to have this fixed up
before the series is merged so that everything just works when this
configuration is selected. I have added some thoughts on the GitHub
issue.

> Strangely, the LTO'd kernel is bigger in size (3.6 MiB vs. 3.1 MiB
> without LTO), which might be completely normal and I just have wrong
> expectations.
>
> Cheers,
> -Paul
>
> [1]: https://github.com/ClangBuiltLinux/linux/issues/1333
>
> Paul Cercueil (3):
> MIPS: boot/compressed: Disable abicalls
> MIPS: boot/compressed: Build without LTO
> MIPS: Add support for LTO
>
> arch/mips/Kconfig | 1 +
> arch/mips/boot/compressed/Makefile | 7 +++++--
> 2 files changed, 6 insertions(+), 2 deletions(-)
>
> --
> 2.33.0
>
>