[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20190211193008.24101-5-ndesaulniers@google.com>
Date: Mon, 11 Feb 2019 11:30:07 -0800
From: ndesaulniers@...gle.com
To: yamada.masahiro@...ionext.com
Cc: natechancellor@...il.com, sedat.dilek@...il.com,
keescook@...omium.org, samitolvanen@...gle.com,
michal.lkml@...kovi.net, akpm@...ux-foundation.org,
hannes@...xchg.org, peterz@...radead.org,
linux@...inikbrodowski.net, npiggin@...il.com,
mathieu.desnoyers@...icios.com, gor@...ux.ibm.com, adrian@...as.de,
rgb@...hat.com, linux-kbuild@...r.kernel.org,
linux-kernel@...r.kernel.org,
Nick Desaulniers <ndesaulniers@...gle.com>
Subject: [PATCH v2 0/4] Improve kernel LLD support
This patch cleans up a few places in the Makefile to make way for
landing LLD support in the kernel. There are still a few arch specific
fixes that need to get upstreamed, but this core set of patches should
be arch independent.
Some very rough numbers: LLD is improving the overall build time of
Google Pixel kernels by about 9%. The build is mostly dominated by
compilation, but LLD is able to shave off quite a bit of time.
One of the included patches helps get LLD linked kernels to competitive
binary size, but there still some bugs in LLD causing it not to discard
certain sections. Once that's fixed, I estimate an LLD linked kernel to
be just barely smaller than a BFD linked kernel (less than 1%).
Folks looking to test should use LLD built from source, as I recently
fixed a bug in LLD that prevented LLD linked kernel modules from being
loadable.
$ make LD=ld.lld
Nick Desaulniers (4):
init/Kconfig: add config support for detecting linker
Makefile: clang: choose GCC_TOOLCHAIN_DIR not on LD
Makefile: lld: tell clang to use lld
Makefile: lld: set -O2 linker flag when linking with LLD
Changes since v1:
* collect reviewed-by, sugguested-by, tested-by tags.
* move where -fuse-ld=lld is added to CFLAGS.
Makefile | 9 ++++++++-
init/Kconfig | 9 +++++++++
2 files changed, 17 insertions(+), 1 deletion(-)
--
2.20.1.791.gb4d0f1c61a-goog
Powered by blists - more mailing lists