I’m one of those Rust folks, and in the last few days I’ve been trying
to dig into this. I focused on one particular benchmark input – I’ve
attached that IR generated from Rust 1.43.0 for LLVM 9.0.1. I started
running a git bisection to see if anything huge jumped out, but it seems
to be gradual. Maybe others can take my input and find some pattern to
the decline.

My results below are with LLVM compiled from git on Fedora 32 with its
Clang 10. My processor is a Ryzen 7 3800X. The command is just “perf
stat -r5 bin/llc syn-*.ll”. Let me know if I can provide more relevant
details, but I hope this reproducible regardless, so others can investigate.

When we’re tracking rustc performance, we usually focus on the
instruction count, as it tends to be more stable for comparison. Here
I’m seeing 5.3% more instructions from 9.x to 10.x, and a further 4.8%
from 10.x to master – net 10.4% increase.

#rust #web-development

LLVM 10 has performance regressions with Rust
2.35 GEEK