11---
22layout : post
3- title : Faster linking times on nightly on linux with `rust-lld`
3+ title : Faster linking times on nightly on Linux using `rust-lld`
44author : Rémy Rakic
55team : the compiler performance working group <https://www.rust-lang.org/governance/teams/compiler#team-wg-compiler-performance>
66---
@@ -17,14 +17,14 @@ changed on the command-line or by the target for which the code is compiled).
1717The linkers do an important job, with concerns about stability, backwards-compatibility and so on.
1818For these and other reasons, on the most popular operating systems they usually are older programs,
1919designed when computers only had a single core. So, they usually tend to be slow on a modern
20- machine. For example, when building ripgrep 13 in debug mode on linux , roughly half of the time is
20+ machine. For example, when building ripgrep 13 in debug mode on Linux , roughly half of the time is
2121actually spent in the linker.
2222
2323There are different linkers, however, and the usual advice to improve linking times is to use one of
2424these newer and faster linkers, like LLVM's [ ` lld ` ] ( https://lld.llvm.org/ ) or Rui Ueyama's
2525[ ` mold ` ] ( https://github.com/rui314/mold ) .
2626
27- Some of rust 's wasm and aarch64 targets already use ` lld ` by default. When using rustup, rustc ships
27+ Some of Rust 's wasm and aarch64 targets already use ` lld ` by default. When using rustup, rustc ships
2828with a version of ` lld ` for this purpose. When CI builds LLVM to use in the compiler, it also builds
2929the linker and packages it. It's referred to as ` rust-lld ` to avoid colliding with any ` lld ` already
3030installed on the user's machine.
0 commit comments