You may already know that the Low-Level Tools team support important tools and code infrastructure. Lately we’ve also been improving our rustc/clang (LLVM) story and I’d like bring everyone up to date.
There are a lot of important and interesting things going on:
Michael Woerister and Nathan Froyd recently (mid-March) enabled Rust incremental compilation for Firefox developers
Michael is experimenting with cross language inlining (rustc/clang) using LTO
Nick Nethercote has started speeding up rustc and has already had a number of wins
David Major has got Windows clang builds working with green tests
LTO is still buggy (but works well enough to run benchmarks) and PGO won’t run on Windows
Win32 - clang with LTO w/o PGO is marginally faster than MSVC with LTO/PGO
Win64 - clang with LTO w/o PGO is ~5-10% slower than MSVC with LTO/PGO
Windows users can build locally with clang
Mike Hommey is tracking improvements and regressions in the Rust compiler (performance regression, crash reporting and more crash reporting)
Tom Tromey is continuing to work on first class Rust support in GDB and LLDB
Ultimately, I’d like to see us standardise on clang on all platforms because it makes Rust/C++ integration better as well as making things simpler for developers and build system maintainers. We’ll get more done if we make our own lives simpler.
I have some specific requests:
Let me know if you have specific Firefox cases where Rust is slowing you down
Cross language inlining is coming - avoid duplication between Rust and C++
Start doing your developer builds with clang
Anthony
|
_______________________________________________
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform