rustc_codegen_cranelift is available on nightly!
rustc_codegen_cranelift is available on nightly!
bjorn3.github.io
Progress report on rustc_codegen_cranelift (Oct 2023)
Quite some exciting progress since the last progress report! There have been 180 commits since the last progress report.
As of today, rustc_codegen_cranelift is available on nightly! :tada: You can run rustup component add rustc-codegen-cranelift-preview --toolchain nightly to install it and then either CARGO_PROFILE_DEV_CODEGEN_BACKEND=cranelift cargo +nightly build to use it for the current invocation or add
Trying cranelift for the first time (I think).
Let's create a "release-dev-cl" profile that inherits "release-dev" profile and compare.
For reference, "release-dev" is:
Cool, cold builds (including deps) went from 73s to 37s, with
zstd-sys
becoming a bigger offender.But but but...
Alright. Which dep is using this. Let's
cargo vendor
andrg
.reported
Alright, let's try another project...
Nice, this one goes from 52s to 19s, and no unsupported intrinsics.
Let's test the binary.
Hmm, it's orders of magnitude slower.. let's
perf
...Ouch,
Vec::extend_with()
,usize::forward_unchecked()
, and even worse,u8::clone()
are slow!That's a hell of a comment !