-
Doc-only changes:
./x.py doc --stage=0 src/libstd
-
libstd-only changes:
./x.py check --stage=0 src/libstd
-
Run tests on individual crate
cargo test -p
-
Always use
--stage=1
./x.py test --stage=1
-
Tidy checks only
./x.py test --stage=0 src/tools/tidy
Check the issue tracker:
E-easy
/E-needs-test
C-cleanup
Ask:
- On Zulip or Discord
- Specific working groups
- There's a working group for that!
- Pathological cases: Open an issue
- Tooling:
perf record
cargo flamegraph
rustc -Zself-profile
– has working groupWG-self-profile
Parse Code -> AST -> HIR -> MIR -> LLVM IR -> Machine Code
WG-mir-opt
- Passes:
- SimplifyCfg, instcombine, simplifyX (most on by default)
- Constant Propagation (on by default)
- Inliner (working on turning it on by default)
- Copy Propagation / NRVO (WIP)
- Other work:
- Polymorphization to avoid instantiating generic MIR bodies more often than needed
- Other ideas around making generics more efficient