clang-format
for rustc
" compiler-team#756 (Zulip) (last review activity: about 5 days ago)missing_copy_implementations
lint. (rust#126293)
rustc --version
" rust#124339box_pointers
lint." rust#126018use
declarations" compiler-team#750 (Zulip)src/tools/rust-demangler
" compiler-team#754 (Zulip)--print host-triple
to print host target triple (rust#125579)
--build-id
flag to rustc (compiler-team#635)
--env-set
option (rust#119926)
None
T-compiler beta / T-compiler stable
specializes
query if (min)specialization is enabled in the crate of the specializing impl" rust#126139
RUST_MIN_STACK=ice rustc hello.rs
" rust#125302
RUST_MIN_STACK
incorrectlyT-types
this time.T-types
this time.P-critical
issues for T-compiler
this time.P-critical
issues for T-types
this time.Unassigned P-high nightly regressions
Regressions outnumbered the improvements this week, but most of the regressions were deemed worth it for one reason or another. Overall, compiler performance didn't end up changing very much.
Triage done by @rylev.
Revision range: b5b13568..c2932aaf
Summary:
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions (primary) | 0.4% | [0.2%, 1.0%] | 63 |
Regressions (secondary) | 0.7% | [0.2%, 2.4%] | 70 |
Improvements (primary) | -0.6% | [-1.2%, -0.2%] | 8 |
Improvements (secondary) | -1.1% | [-5.2%, -0.2%] | 7 |
All (primary) | 0.3% | [-1.2%, 1.0%] | 71 |
5 Regressions, 2 Improvements, 7 Mixed; 2 of them in rollups
58 artifact comparisons made in total
Print token::Interpolated
with token stream pretty printing. #125174 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions (primary) | 0.3% | [0.2%, 0.4%] | 9 |
Regressions (secondary) | - | - | 0 |
Improvements (primary) | - | - | 0 |
Improvements (secondary) | - | - | 0 |
All (primary) | 0.3% | [0.2%, 0.4%] | 9 |
Add TyCtxt::is_lang_item
, use it in the compiler #126491 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions (primary) | 0.3% | [0.2%, 0.4%] | 10 |
Regressions (secondary) | - | - | 0 |
Improvements (primary) | - | - | 0 |
Improvements (secondary) | - | - | 0 |
All (primary) | 0.3% | [0.2%, 0.4%] | 10 |
Indicate in non_local_defs
lint that the macro needs to change #125722 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions (primary) | 0.2% | [0.2%, 0.2%] | 6 |
Regressions (secondary) | - | - | 0 |
Improvements (primary) | - | - | 0 |
Improvements (secondary) | - | - | 0 |
All (primary) | 0.2% | [0.2%, 0.2%] | 6 |
Rollup of 6 pull requests #126605 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions (primary) | 0.3% | [0.3%, 0.4%] | 6 |
Regressions (secondary) | - | - | 0 |
Improvements (primary) | - | - | 0 |
Improvements (secondary) | - | - | 0 |
All (primary) | 0.3% | [0.3%, 0.4%] | 6 |
Migrate inaccessible-temp-dir
, output-with-hyphens
and issue-10971-temps-dir
run-make
tests to rmake
#126279 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions (primary) | 0.3% | [0.3%, 0.3%] | 6 |
Regressions (secondary) | - | - | 0 |
Improvements (primary) | - | - | 0 |
Improvements (secondary) | - | - | 0 |
All (primary) | 0.3% | [0.3%, 0.3%] | 6 |
Migrate link-arg
, link-dedup
and issue-26092
run-make
tests to rmake
format #125500 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions (primary) | - | - | 0 |
Regressions (secondary) | - | - | 0 |
Improvements (primary) | -0.4% | [-0.4%, -0.3%] | 6 |
Improvements (secondary) | - | - | 0 |
All (primary) | -0.4% | [-0.4%, -0.3%] | 6 |
Migrate extern-flag-fun
, incremental-debugger-visualiser
and incremental-session-fail
run-make
tests to rmake.rs
#126490 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions (primary) | - | - | 0 |
Regressions (secondary) | - | - | 0 |
Improvements (primary) | -0.3% | [-0.4%, -0.3%] | 6 |
Improvements (secondary) | - | - | 0 |
All (primary) | -0.3% | [-0.4%, -0.3%] | 6 |
Add SingleUseConsts
mir-opt pass #125910 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions (primary) | 0.4% | [0.3%, 0.4%] | 2 |
Regressions (secondary) | - | - | 0 |
Improvements (primary) | -0.3% | [-0.4%, -0.2%] | 4 |
Improvements (secondary) | -2.3% | [-2.9%, -1.7%] | 2 |
All (primary) | -0.1% | [-0.4%, 0.4%] | 6 |
Make ObligationEmittingRelation
s emit Goal
rather than Obligation
#126130 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions (primary) | - | - | 0 |
Regressions (secondary) | 0.4% | [0.1%, 0.6%] | 14 |
Improvements (primary) | -0.2% | [-0.2%, -0.2%] | 1 |
Improvements (secondary) | - | - | 0 |
All (primary) | -0.2% | [-0.2%, -0.2%] | 1 |
Tait must be constrained if in sig #113169 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions (primary) | 0.7% | [0.7%, 0.7%] | 1 |
Regressions (secondary) | - | - | 0 |
Improvements (primary) | -0.3% | [-0.4%, -0.3%] | 2 |
Improvements (secondary) | - | - | 0 |
All (primary) | -0.0% | [-0.4%, 0.7%] | 3 |
Extend SCC construction to enable extra functionality #125069 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions (primary) | 0.2% | [0.2%, 0.3%] | 6 |
Regressions (secondary) | 0.5% | [0.1%, 1.0%] | 10 |
Improvements (primary) | - | - | 0 |
Improvements (secondary) | -0.3% | [-0.3%, -0.3%] | 2 |
All (primary) | 0.2% | [0.2%, 0.3%] | 6 |
Remove superfluous UbChecks from SliceIndex
methods #126299 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions (primary) | 0.4% | [0.2%, 0.6%] | 4 |
Regressions (secondary) | 0.8% | [0.5%, 1.3%] | 5 |
Improvements (primary) | -0.4% | [-0.6%, -0.2%] | 3 |
Improvements (secondary) | -0.6% | [-0.8%, -0.4%] | 7 |
All (primary) | 0.1% | [-0.6%, 0.6%] | 7 |
rustc_span: Optimize more hygiene operations using Span::map_ctxt
#126543 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions (primary) | 0.2% | [0.2%, 0.2%] | 1 |
Regressions (secondary) | 0.3% | [0.2%, 0.4%] | 3 |
Improvements (primary) | -1.1% | [-1.4%, -0.3%] | 4 |
Improvements (secondary) | -0.3% | [-0.3%, -0.2%] | 3 |
All (primary) | -0.8% | [-1.4%, 0.2%] | 5 |
Rollup of 3 pull requests #126581 (Comparison Link)
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions (primary) | - | - | 0 |
Regressions (secondary) | 1.3% | [1.3%, 1.3%] | 1 |
Improvements (primary) | -0.3% | [-0.4%, -0.2%] | 6 |
Improvements (secondary) | - | - | 0 |
All (primary) | -0.3% | [-0.4%, -0.2%] | 6 |
As per Rust By Example, we use 2: as a local label there to work around an LLVM bug that mistakes labels like 0:, 1:, or 10: for binary. This example works. However, if we don't know about this rule, and we try to use 0: instead, the error we get is confusing
Next meetings' agenda draft: hackmd link