Re: [PATCH v2 00/28] Add support for Clang LTO

From: Masahiro Yamada
Date: Thu Sep 10 2020 - 14:11:57 EST

On Fri, Sep 11, 2020 at 2:46 AM 'Nick Desaulniers' via Clang Built
Linux <clang-built-linux@xxxxxxxxxxxxxxxx> wrote:
> Hey Ian,
> It was nice to meet you at Linux plumbers. You might want to take a
> look at this series. It implements builds of the Linux kernel with
> LTO. It would be good to get eyes on it and help review it from folks
> working on this from the GCC angle. The series has some configs that
> split where Clang specific changes need to be made; it might be of
> interest to think about what would the similar changes be needed for
> GCC. Also, congrats on your LWN article!


Some people may remember GCC LTO was posted in 2014
(and rejected by Linus).

In my understanding, GCC LTO does not work for relocatable objects
because GNU linker is agnostic about LTO.

GCC LTO was implemented in the final link stage (i.e. vmlinux)
by using $(CC) as a linker driver.

On the other hand, Clang LTO, in this series implementation,
works in the pre-mospost stage (i.e. vmlinux.o).

Best Regards
Masahiro Yamada