-
Notifications
You must be signed in to change notification settings - Fork 114
Description
As per the discussion in #43, it would be convenient to have LLVM tools like llvm-objdump and
llvm-size shipped with the Rust toolchain. These would remove the need to have to install GCC
binutils which require you to do one binutils install per target architecture. OTOH, LLVM binutils
have multi-arch support and support all (most?) the architectures that rustc supports (since rustc
is LLVM based).
Tasks
We are looking for someone to take on this task:
Submit an RFC to ship llvm binutils with the Rust toolchain. @japaric can help with the
edition of the RFC.
The RFC should make the case for having these tools shipped with the Rust toolchain. llvm-objdump,
llvm-nm and llvm-size are pretty useful to diagnose problems and to measure / estimate metrics
like binary size and performance. llvm-objcopy can be used to translate ELF files (what rustc
usually outputs) into binary files (what program loaders expect). llvm-cov nicely complements
rustc profiling support (-Zprofile).
The team will bring this up during the Rust All Hands event (last week of March) and we'll see if we need an RFC.
@whitequark is llvm-cxxfilt actually needed? It shouldn't contain architecture specific code,
right? Also, there's a Rust implementation of c++filt.
The RFC should note that note as a drawback that does this makes us more reliant on LLVM but we are
already shipping lld (a much bigger LLVM tool) with the Rust toolchain as of rust-lang/rust#48125
(we should submit the RFC after that PR lands).
Part of #43