T Compiler Meeting Agenda 2026 05 28

T-compiler Meeting Agenda 2026-05-28

Announcements

  • Today Rust 1.96.0 release (blog post)
  • Reminder: if you see a PR/issue that seems like there might be legal implications due to copyright/IP/etc, please let us know (or at least message @davidtwco or @Boxy so we can pass it along).
  • This is the first meeting since @_Wesley Wiser has rotated out as lead - thanks to Wesley for all of his hard work over the years as compiler team co-lead!
  • … and welcome Boxy as new co-lead :-)

Other WG meetings

MCPs/FCPs

Backport nominations

T-compiler beta / T-compiler stable

  • No beta nominations for T-compiler this time.
  • No stable nominations for T-compiler this time.

T-types beta / T-types stable

  • No beta nominations for T-types this time.
  • No stable nominations for T-types this time.

PRs S-waiting-on-t-compiler

T-compiler

Issues of Note

Short Summary

P-critical

T-compiler

  • No P-critical issues for T-compiler this time.

T-types

  • No P-critical issues for T-types this time.

P-high regressions

P-high beta regressions

  • No P-high beta regressions this time.

Unassigned P-high nightly regressions

  • No unassigned P-high nightly regressions this time.

Performance logs

2026-05-25 Triage Log

This week was largely positive, with most of the improvements coming from algorithm change in visibility checking: #156228.

Triage done by @panstromek. Revision range: 281c97c3..783eb8c8

Summary:

(instructions:u)meanrangecount
Regressions (primary)0.4%[0.1%, 0.7%]5
Regressions (secondary)0.5%[0.1%, 1.1%]16
Improvements (primary)-0.9%[-6.6%, -0.1%]164
Improvements (secondary)-0.4%[-1.3%, -0.1%]51
All (primary)-0.9%[-6.6%, 0.7%]169

2 Regressions, 2 Improvements, 5 Mixed; 2 of them in rollups 34 artifact comparisons made in total

Regressions

Stabilize --remap-path-prefix in rustdoc #155307 (Comparison Link)

(instructions:u)meanrangecount
Regressions (primary)0.7%[0.7%, 0.7%]1
Regressions (secondary)0.4%[0.4%, 0.4%]1
Improvements (primary)--0
Improvements (secondary)--0
All (primary)0.7%[0.7%, 0.7%]1

nalgebra regressions are noise (return to default state after previous PR).

Rollup of 4 pull requests #156881 (Comparison Link)

(instructions:u)meanrangecount
Regressions (primary)0.3%[0.2%, 0.4%]11
Regressions (secondary)0.2%[0.0%, 0.6%]12
Improvements (primary)--0
Improvements (secondary)-1.9%[-1.9%, -1.9%]1
All (primary)0.3%[0.2%, 0.4%]11

Looks to be caused by https://github.com/rust-lang/rust/pull/156824. I couldn’t confirm this directly because we miss the unrolled build, but looking at the other PRs, one is a pure test change, and perf runs on the other two came back with no relevant changes, so this is the only one remaning.

It doesn’t seem like that big of a deal to me (mostly tiny benchmarks, incr-unchanged/patched), but seems unexpected. Some of them regress in queries that don’t seem related (match checking). Left a comment there.

Improvements

Privacy: try use queue instead of fixed-point iteration #156228 (Comparison Link)

(instructions:u)meanrangecount
Regressions (primary)--0
Regressions (secondary)--0
Improvements (primary)-0.9%[-6.7%, -0.1%]144
Improvements (secondary)-0.5%[-1.3%, -0.1%]31
All (primary)-0.9%[-6.7%, -0.1%]144

Update LLVM to 22.1.6 #156757 (Comparison Link)

(instructions:u)meanrangecount
Regressions (primary)--0
Regressions (secondary)--0
Improvements (primary)-0.7%[-0.7%, -0.7%]1
Improvements (secondary)-0.4%[-0.4%, -0.4%]1
All (primary)-0.7%[-0.7%, -0.7%]1

note: this result is spurious, we got inverse results in the next PR (#155307, first PR in the regressions list).

Mixed

Make bitset would_modify_words more vectorizer-friendly #153640 (Comparison Link)

(instructions:u)meanrangecount
Regressions (primary)--0
Regressions (secondary)0.1%[0.1%, 0.1%]1
Improvements (primary)-1.4%[-2.2%, -0.7%]4
Improvements (secondary)--0
All (primary)-1.4%[-2.2%, -0.7%]4

include-blob regression is noise.

Fix jump-to-def links broken by turbofish syntax #156727 (Comparison Link)

(instructions:u)meanrangecount
Regressions (primary)0.7%[0.7%, 0.7%]1
Regressions (secondary)0.4%[0.4%, 0.4%]1
Improvements (primary)--0
Improvements (secondary)-0.1%[-0.1%, -0.1%]1
All (primary)0.7%[0.7%, 0.7%]1

Perf results are noise, this PR doesn’t change anything in the compiler. It seems that nalgebra opt became bimodal.

Rollup of 2 pull requests #156794 (Comparison Link)

(instructions:u)meanrangecount
Regressions (primary)0.3%[0.2%, 0.4%]64
Regressions (secondary)0.3%[0.1%, 0.4%]38
Improvements (primary)-0.3%[-0.5%, -0.2%]9
Improvements (secondary)-0.2%[-0.2%, -0.2%]8
All (primary)0.2%[-0.5%, 0.4%]73

Caused by https://github.com/rust-lang/rust/pull/156242, already triaged by @JonathanBrouwer, addressed by @Saethlin in https://github.com/rust-lang/rust/pull/156849.

Implement fast path for derive(PartialOrd) when deriving Ord #155598 (Comparison Link)

(instructions:u)meanrangecount
Regressions (primary)0.7%[0.5%, 0.8%]3
Regressions (secondary)0.7%[0.2%, 1.0%]9
Improvements (primary)-0.3%[-0.5%, -0.2%]20
Improvements (secondary)-0.3%[-0.5%, -0.2%]5
All (primary)-0.2%[-0.5%, 0.8%]23

Improvements mostly outweigh regressions. Results roughly match pre-merge results, so I assume the comments above still hold and this is considered fine.

Re-add call site inlining attributes #156849 (Comparison Link)

(instructions:u)meanrangecount
Regressions (primary)0.3%[0.3%, 0.4%]2
Regressions (secondary)0.2%[0.2%, 0.2%]8
Improvements (primary)-0.3%[-0.4%, -0.2%]66
Improvements (secondary)-0.3%[-0.5%, -0.2%]42
All (primary)-0.3%[-0.4%, 0.4%]68

Fixes the regression from https://github.com/rust-lang/rust/pull/156242, already triaged by @saethlin (author): “Perf impact is the inverse of the PR linked in the description, within typical jitter. The net effect of the two PRs is nothing.”

Nominated Issues

T-compiler

  • No I-compiler-nominated issues this time.

RFC

  • No I-compiler-nominated RFCs this time.

Oldest PRs waiting for review

T-compiler

  • Skipping this week due to many contributors being at RustWeek

Next meetings’ agenda draft: hackmd link