Re: [PATCH v8 00/16] Add support for Clang LTO
From: Arnd Bergmann <arnd@kernel.org>
Date: 2020-12-08 16:57:28
Also in:
linux-arch, linux-kbuild, linux-pci, lkml
From: Arnd Bergmann <arnd@kernel.org>
Date: 2020-12-08 16:57:28
Also in:
linux-arch, linux-kbuild, linux-pci, lkml
On Tue, Dec 8, 2020 at 5:53 PM 'Sami Tolvanen' via Clang Built Linux [off-list ref] wrote:
quoted
A small update here: I see this behavior with every single module build, including 'tinyconfig' with one module enabled, and 'defconfig'.The .o file here is a thin archive of the bitcode files for the module. We compile .lto.o from that before modpost, because we need an ELF binary to process, and then reuse the .lto.o file when linking the final module. At no point should we link the .o file again, especially not with .lto.o, because that would clearly cause every symbol to be duplicated, so I'm not sure what goes wrong here. Here's the relevant part of scripts/Makefile.modfinal: ifdef CONFIG_LTO_CLANG # With CONFIG_LTO_CLANG, reuse the object file we compiled for modpost to # avoid a second slow LTO link prelink-ext := .lto ... $(modules): %.ko: %$(prelink-ext).o %.mod.o scripts/module.lds FORCE +$(call if_changed,ld_ko_o)
Ah, it's probably a local problem now, as I had a merge conflict against
linux-next in this Makefile and I must have resolved the conflict incorrectly.
Arnd
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel