Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

add clang/lld support #478

Closed
wants to merge 2 commits into from
Closed

add clang/lld support #478

wants to merge 2 commits into from

Conversation

retrage
Copy link

@retrage retrage commented Oct 21, 2019

lld, the LLVM linker, can link recent mainline Linux kernel. This PR adds lld support for lkl. The commit fa800a8 adds initial lld support for x86_64 Linux host with clang.
We will need the following features:

  • support more platforms
  • CI target for
  • lld support with gcc

This change is Reviewable

arch/lkl/auto.conf Outdated Show resolved Hide resolved
@retrage retrage force-pushed the ld-lld branch 4 times, most recently from 66208e2 to 2b07681 Compare October 24, 2019 08:20
@retrage
Copy link
Author

retrage commented Oct 24, 2019

I compared the lld build with GNU ld.

  • GNU ld: 1:53.14elapsed
  • LLVM lld: 1:48.28elapsed
    The linking time looks faster than GNU ld.

lld, the LLVM linker, can link recent mainline Linux kernel. It provides
faster link time compared with GNU linker[1]. This commit adds lld support
to lkl for x86_64/i386 Linux host with clang.
To build with lld, invoke command like below:

make -C tools/lkl CC=clang LD=ld.lld

[1] https://lld.llvm.org/

Signed-off-by: Akira Moroo <[email protected]>
This commit adds CircleCI jobs for building with clang/lld toolchain.
The targets are x86_64 and i386 so far. The jobs uses new docker images,
lkldocker/circleci-clang-x86_64 and lkldocker/circleci-clang-i386[1].

[1] lkl/lkl-docker#5

Signed-off-by: Akira Moroo <[email protected]>
@retrage
Copy link
Author

retrage commented Oct 26, 2019

I added i386 and gcc with lld build support. I also added CircleCI jobs for clang/lld both x86_64 and i386. Please refer PR to lkl/lkl-docker lkl/lkl-docker#5.

@retrage retrage changed the title [RFC] add lld support add lld support Oct 26, 2019
@retrage retrage changed the title add lld support add clang/lld support Oct 26, 2019
@tavip tavip closed this Jan 27, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants