Re: [PATCH 00/22] add support for Clang LTO
From: Sami Tolvanen <samitolvanen@google.com>
Date: 2020-06-24 21:30:26
Also in:
linux-arch, linux-kbuild, linux-pci, lkml
From: Sami Tolvanen <samitolvanen@google.com>
Date: 2020-06-24 21:30:26
Also in:
linux-arch, linux-kbuild, linux-pci, lkml
On Wed, Jun 24, 2020 at 11:15:40PM +0200, Peter Zijlstra wrote:
On Wed, Jun 24, 2020 at 01:31:38PM -0700, Sami Tolvanen wrote:quoted
This patch series adds support for building x86_64 and arm64 kernels with Clang's Link Time Optimization (LTO). In addition to performance, the primary motivation for LTO is to allow Clang's Control-Flow Integrity (CFI) to be used in the kernel. Google's Pixel devices have shipped with LTO+CFI kernels since 2018. Most of the patches are build system changes for handling LLVM bitcode, which Clang produces with LTO instead of ELF object files, postponing ELF processing until a later stage, and ensuring initcall ordering. Note that first objtool patch in the series is already in linux-next, but as it's needed with LTO, I'm including it also here to make testing easier.I'm very sad that yet again, memory ordering isn't addressed. LTO vastly increases the range of the optimizer to wreck things.
I believe Will has some thoughts about this, and patches, but I'll let him talk about it. Sami _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel