diff --git a/content/minutes/triage-meeting/T-compiler Meeting Agenda 2024-12-05.md b/content/minutes/triage-meeting/T-compiler Meeting Agenda 2024-12-05.md new file mode 100644 index 00000000..ce8d6650 --- /dev/null +++ b/content/minutes/triage-meeting/T-compiler Meeting Agenda 2024-12-05.md @@ -0,0 +1,395 @@ +--- +tags: weekly, rustc +type: docs +note_id: y41E-EkQQW2kpkhEy5vTbA +--- + +# T-compiler Meeting Agenda 2024-12-05 + +## Announcements + +- The annual State of Rust survey has just been published ([blog post](https://blog.rust-lang.org/2024/12/05/annual-survey-2024-launch.html)): please share, boost, toot, tweet, and don't forget to fill it up :-) +- Tomorrow design meeting about `type_id` collisions ([compiler-team#774](https://github.com/rust-lang/rust/issues/131229)) +- 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 @_**Wesley Wiser** so we can pass it along). + +### Other WG meetings + +- @_**davidtwco** office hours +- Stable MIR Weekly Meeting + +## MCPs/FCPs + +- New MCPs (take a look, see if you like them!) + - No new proposals this time. +- Old MCPs (stale MCP might be closed as per [MCP procedure](https://forge.rust-lang.org/compiler/mcp.html#when-should-major-change-proposals-be-closed)) + - None at this time +- Old MCPs (not seconded, take a look) + - "Add hygiene attributes to compile expanded source code" [compiler-team#692](https://github.com/rust-lang/compiler-team/issues/692) ([Zulip](https://rust-lang.zulipchat.com/#narrow/stream/233931-xxx/topic/Add.20option.20to.20compile.20expanded.20ASTs.20for.20h.E2.80.A6.20compiler-team.23692)) (last review activity: 2 months ago) + - cc:'ing @**Vadim Petrochenkov** @**Esteban Küber** @**oli** (in case they have comments) + - "Add Hotpatch flag" [compiler-team#745](https://github.com/rust-lang/compiler-team/issues/745) ([Zulip](https://rust-lang.zulipchat.com/#narrow/stream/233931-xxx/topic/Add.20Hotpatch.20flag.20compiler-team.23745)) (last review activity: about 53 days ago) + - "Make the test cfg a userspace check-cfg" [compiler-team#785](https://github.com/rust-lang/compiler-team/issues/785) ([Zulip](https://rust-lang.zulipchat.com/#narrow/stream/233931-xxx/topic/Make.20the.20test.20cfg.20a.20userspace.20check-cfg.20compiler-team.23785)) (last review activity: about 0 days ago) + - bumping this one, few missing ticks: c @**Wesley Wiser** @**pnkfelix** @**Esteban Küber** @**cjgillot** + - "Policy change around adding new unstable flags" [compiler-team#787](https://github.com/rust-lang/compiler-team/issues/787) ([Zulip](https://rust-lang.zulipchat.com/#narrow/stream/233931-xxx/topic/Policy.20change.20around.20adding.20new.20unstable.20.E2.80.A6.20compiler-team.23787)) (last review activity: about 46 days ago) + - "Normalize FileCheck directives" [compiler-team#789](https://github.com/rust-lang/compiler-team/issues/789) ([Zulip](https://rust-lang.zulipchat.com/#narrow/stream/233931-xxx/topic/Normalize.20FileCheck.20directives.20compiler-team.23789)) (last review activity: about 46 days ago) + - any opinion from the team? + - "Relink, don't rebuild" [compiler-team#790](https://github.com/rust-lang/compiler-team/issues/790) ([Zulip](https://rust-lang.zulipchat.com/#narrow/stream/233931-xxx/topic/Relink.2C.20don.27t.20rebuild.20compiler-team.23790)) (last review activity: about 46 days ago) + - "Create an avr-unknown-none target" [compiler-team#800](https://github.com/rust-lang/compiler-team/issues/800) ([Zulip](https://rust-lang.zulipchat.com/#narrow/stream/233931-xxx/topic/Create.20an.20avr-unknown-unknown.20target.20compiler-team.23800)) (last review activity: about 24 days ago) + - any opposing opinion or comment to this? +- Pending FCP requests (check your boxes!) + - "sanitizers: Stabilize AddressSanitizer and LeakSanitizer for the Tier 1 targets" [rust#123617](https://github.com/rust-lang/rust/pull/123617) +- Things in FCP (make sure you're good with it) + - "Promote OpenHarmony targets to Tier 2 with Host Tools" [compiler-team#811](https://github.com/rust-lang/compiler-team/issues/811) ([Zulip](https://rust-lang.zulipchat.com/#narrow/stream/233931-xxx/topic/Promote.20OpenHarmony.20targets.20to.20Tier.202.20wit.E2.80.A6.20compiler-team.23811)) + - "Lint on combining `#[no_mangle]` and `#[export_name]`" [rust#131558](https://github.com/rust-lang/rust/pull/131558) +- Accepted MCPs + - "Support for a new `wasm32-wali-linux-musl` Tier-3 target" [compiler-team#797](https://github.com/rust-lang/compiler-team/issues/797) ([Zulip](https://rust-lang.zulipchat.com/#narrow/stream/233931-xxx/topic/Support.20for.20a.20new.20.60wasm32-linux-musl.60.20Tie.E2.80.A6.20compiler-team.23797)) + - "Unstable flag to choose Emscripten unwinding abi" [compiler-team#801](https://github.com/rust-lang/compiler-team/issues/801) ([Zulip](https://rust-lang.zulipchat.com/#narrow/stream/233931-xxx/topic/Unstable.20flag.20to.20choose.20Emscripten.20unwind.E2.80.A6.20compiler-team.23801)) + - "Promote powerpc64le-unknown-linux-musl to tier 2" [compiler-team#803](https://github.com/rust-lang/compiler-team/issues/803) ([Zulip](https://rust-lang.zulipchat.com/#narrow/stream/233931-xxx/topic/Promote.20powerpc64le-unknown-linux-musl.20to.E2.80.A6.20compiler-team.23803)) + - "Allow users to specify the TLS dialect (Traditional TLS vs. TLSDESC)" [compiler-team#805](https://github.com/rust-lang/compiler-team/issues/805) ([Zulip](https://rust-lang.zulipchat.com/#narrow/stream/233931-xxx/topic/Allow.20users.20to.20specify.20the.20TLS.20dialect.20.28T.E2.80.A6.20compiler-team.23805)) + - "Ban field-projecting into `[rustc_layout_scalar_valid_range_*]` types" [compiler-team#807](https://github.com/rust-lang/compiler-team/issues/807) ([Zulip](https://rust-lang.zulipchat.com/#narrow/stream/233931-xxx/topic/Ban.20field-projecting.20into.20.60.5Brustc_layout_.E2.80.A6.20compiler-team.23807)) + - "Forbid disabling SSE on x86 targets that have SSE in their "baseline"" [compiler-team#808](https://github.com/rust-lang/compiler-team/issues/808) ([Zulip](https://rust-lang.zulipchat.com/#narrow/stream/233931-xxx/topic/Forbid.20disabling.20SSE.20on.20x86.20targets.20that.20.E2.80.A6.20compiler-team.23808)) + - "Delete current polymorphization implementation" [compiler-team#810](https://github.com/rust-lang/compiler-team/issues/810) ([Zulip](https://rust-lang.zulipchat.com/#narrow/stream/233931-xxx/topic/Delete.20current.20polymorphization.20implement.E2.80.A6.20compiler-team.23810)) +- MCPs blocked on unresolved concerns + - "Add `evex512` target feature for AVX10" [compiler-team#778](https://github.com/rust-lang/compiler-team/issues/778) ([Zulip](https://rust-lang.zulipchat.com/#narrow/stream/233931-xxx/topic/Add.20.60evex512.60.20target.20feature.20for.20AVX10.20compiler-team.23778)) (last review activity: 2 months ago) + - concern: [design-around-naming-scheme](https://github.com/rust-lang/compiler-team/issues/778#issuecomment-2514307904) + - "Retire the mailing list and make all decisions on zulip" [compiler-team#649](https://github.com/rust-lang/compiler-team/issues/649) ([Zulip](https://rust-lang.zulipchat.com/#narrow/stream/233931-xxx/topic/Retire.20the.20mailing.20list.20and.20make.20all.20deci.E2.80.A6.20compiler-team.23649)) + - concern: [automatic-sync](https://github.com/rust-lang/compiler-team/issues/649#issuecomment-1618902660) +- Finalized FCPs (disposition merge) + - "Add `--print host-tuple` to print host target tuple" [rust#125579](https://github.com/rust-lang/rust/pull/125579) + - "make unsupported_calling_conventions a hard error" [rust#129935](https://github.com/rust-lang/rust/pull/129935) + - "Fix ICE when passing DefId-creating args to legacy_const_generics." [rust#130443](https://github.com/rust-lang/rust/pull/130443) + - "Stabilize WebAssembly `multivalue`, `reference-types`, and `tail-call` target features" [rust#131080](https://github.com/rust-lang/rust/pull/131080) +- Other teams finalized FCPs + - "Add lint against function pointer comparisons" [rust#118833](https://github.com/rust-lang/rust/pull/118833) + - "Fixup Windows verbatim paths when used with the `include!` macro" [rust#125205](https://github.com/rust-lang/rust/pull/125205) + - "Allow dropping `dyn Trait` principal" [rust#126660](https://github.com/rust-lang/rust/pull/126660) + - "atomics: allow atomic and non-atomic reads to race" [rust#128778](https://github.com/rust-lang/rust/pull/128778) + - "Lint against getting pointers from immediately dropped temporaries" [rust#128985](https://github.com/rust-lang/rust/pull/128985) + - "Do not consider match/let/ref of place that evaluates to `!` to diverge, disallow coercions from them too" [rust#129392](https://github.com/rust-lang/rust/pull/129392) + - "Make deprecated_cfg_attr_crate_type_name a hard error" [rust#129670](https://github.com/rust-lang/rust/pull/129670) + - "Stabilize expr_2021 fragment specifier in all editions" [rust#129972](https://github.com/rust-lang/rust/pull/129972) + - "Check elaborated projections from dyn don't mention unconstrained late bound lifetimes" [rust#130367](https://github.com/rust-lang/rust/pull/130367) + - "Finish stabilization of `result_ffi_guarantees`" [rust#130628](https://github.com/rust-lang/rust/pull/130628) + - "Stabilize const `ptr::write*` and `mem::replace`" [rust#130954](https://github.com/rust-lang/rust/pull/130954) + - "Stabilize s390x inline assembly" [rust#131258](https://github.com/rust-lang/rust/pull/131258) + - "Stabilize Arm64EC inline assembly" [rust#131781](https://github.com/rust-lang/rust/pull/131781) + - "Stabilize `#[diagnostic::do_not_recommend]`" [rust#132056](https://github.com/rust-lang/rust/pull/132056) + - "Make missing_abi lint warn-by-default." [rust#132397](https://github.com/rust-lang/rust/pull/132397) + - "mark is_val_statically_known intrinsic as stably const-callable" [rust#132449](https://github.com/rust-lang/rust/pull/132449) + - "Stabilize async closures (RFC 3668)" [rust#132706](https://github.com/rust-lang/rust/pull/132706) + +### WG checkins + +None + +## Backport nominations + +[T-compiler beta](https://github.com/rust-lang/rust/issues?q=is%3Aall+label%3Abeta-nominated+-label%3Abeta-accepted+label%3AT-compiler) / [T-compiler stable](https://github.com/rust-lang/rust/issues?q=is%3Aall+label%3Astable-nominated+-label%3Astable-accepted+label%3AT-compiler) +- :beta: "Update LLVM to 19.1.5" [rust#133799](https://github.com/rust-lang/rust/pull/133799) + - Authored by DianQK + - Fixes #133276 (miscompile specific to `loongarch64` arch, tier 2 target) and #133203 (a more interesting invalid LLVM IR crashing rustc on stable) + +- No stable nominations for `T-compiler` this time. + +[T-types stable](https://github.com/rust-lang/rust/issues?q=is%3Aall+label%3Abeta-nominated+-label%3Abeta-accepted+label%3AT-types) / [T-types beta](https://github.com/rust-lang/rust/issues?q=is%3Aall+label%3Astable-nominated+-label%3Astable-accepted+label%3AT-types) +- No beta nominations for `T-types` this time. +- No stable nominations for `T-types` this time. + +## PRs S-waiting-on-team + +[T-compiler](https://github.com/rust-lang/rust/pulls?q=is%3Aopen+label%3AS-waiting-on-team+label%3AT-compiler) +- [Issues in progress or waiting on other teams](https://hackmd.io/XYr1BrOWSiqCrl8RCWXRaQ) + +## Issues of Note + +### Short Summary + +- [0 T-compiler P-critical issues](https://github.com/rust-lang/rust/issues?q=is%3Aopen+label%3AT-compiler+label%3AP-critical) + - [0 of those are unassigned](https://github.com/rust-lang/rust/issues?q=is%3Aopen+label%3AT-compiler+label%3AP-critical+no%3Aassignee) +- [59 T-compiler P-high issues](https://github.com/rust-lang/rust/issues?q=is%3Aopen+label%3AT-compiler+label%3AP-high) + - [37 of those are unassigned](https://github.com/rust-lang/rust/issues?q=is%3Aopen+label%3AT-compiler+label%3AP-high+no%3Aassignee) +- [0 P-critical, 0 P-high, 0 P-medium, 0 P-low regression-from-stable-to-beta](https://github.com/rust-lang/rust/labels/regression-from-stable-to-beta) +- [0 P-critical, 0 P-high, 5 P-medium, 2 P-low regression-from-stable-to-nightly](https://github.com/rust-lang/rust/labels/regression-from-stable-to-nightly) +- [0 P-critical, 33 P-high, 100 P-medium, 17 P-low regression-from-stable-to-stable](https://github.com/rust-lang/rust/labels/regression-from-stable-to-stable) + +### P-critical + +[T-compiler](https://github.com/rust-lang/rust/issues?q=is%3Aopen+label%3AP-critical+label%3AT-compiler) +- No `P-critical` issues for `T-compiler` this time. + +[T-types](https://github.com/rust-lang/rust/issues?q=is%3Aopen+label%3AP-critical+label%3AT-types) +- No `P-critical` issues for `T-types` this time. + +### P-high regressions + +[P-high beta regressions](https://github.com/rust-lang/rust/issues?q=is%3Aopen+label%3Aregression-from-stable-to-beta+label%3AP-high+-label%3AT-infra+-label%3AT-libs+-label%3AT-libs-api+-label%3AT-release+-label%3AT-rustdoc+-label%3AT-core) +- No `P-high` beta regressions this time. + +[Unassigned P-high nightly regressions](https://github.com/rust-lang/rust/issues?q=is%3Aopen+label%3Aregression-from-stable-to-nightly+label%3AP-high+no%3Aassignee+-label%3AT-infra+-label%3AT-libs+-label%3AT-libs-api+-label%3AT-release+-label%3AT-rustdoc+-label%3AT-core+) +- No unassigned `P-high` nightly regressions this time. + +## Performance logs + +> [triage logs for 2024-12-03](https://github.com/rylev/rustc-perf/blob/perf-2024-12-03/triage/2024-12-03.md) + +Busy week with more PRs impacting performance than is typical. Luckily performance improvements outweighed regressions in real world benchmarks with the largest single performance gain coming from a change to no longer unconditionally do LLVM IR verification in debug builds which was just wasted work. + +Triage done by **@rylev**. +Revision range: [7db7489f..490b2cc0](https://perf.rust-lang.org/?start=7db7489f9bc274cb60c4956bfa56de0185eb1b9b&end=490b2cc09860dd62a7595bb07364d71c12ce4e60&absolute=false&stat=instructions%3Au) + +**Summary**: + +| (instructions:u) | mean | range | count | +|:------------------------:|:-----:|:--------------:|:-----:| +| Regressions (primary) | 0.5% | [0.2%, 1.9%] | 58 | +| Regressions (secondary) | 1.1% | [0.2%, 5.1%] | 85 | +| Improvements (primary) | -2.3% | [-8.2%, -0.2%] | 116 | +| Improvements (secondary) | -2.5% | [-8.9%, -0.1%] | 55 | +| All (primary) | -1.4% | [-8.2%, 1.9%] | 174 | + + +6 Regressions, 6 Improvements, 5 Mixed; 5 of them in rollups +49 artifact comparisons made in total + +#### Regressions + +Rollup of 5 pull requests [#133551](https://github.com/rust-lang/rust/pull/133551) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=66adeaf46b7a646daeed29518ef76235fcdb9726&end=eddb717281a9031f645d88dd3b8323a7e25632cc&stat=instructions:u) + +| (instructions:u) | mean | range | count | +|:----------------------------------:|:----:|:------------:|:-----:| +| Regressions (primary) | 0.4% | [0.2%, 1.6%] | 20 | +| Regressions (secondary) | 2.4% | [0.3%, 4.8%] | 22 | +| Improvements (primary) | - | - | 0 | +| Improvements (secondary) | - | - | 0 | +| All (primary) | 0.4% | [0.2%, 1.6%] | 20 | + + +Rollup of 12 pull requests [#133561](https://github.com/rust-lang/rust/pull/133561) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=eddb717281a9031f645d88dd3b8323a7e25632cc&end=f005c7437def424a1c43cbc380352a58d8ac920b&stat=instructions:u) + +| (instructions:u) | mean | range | count | +|:----------------------------------:|:----:|:------------:|:-----:| +| Regressions (primary) | 0.2% | [0.1%, 0.3%] | 3 | +| Regressions (secondary) | 0.6% | [0.2%, 0.9%] | 10 | +| Improvements (primary) | - | - | 0 | +| Improvements (secondary) | - | - | 0 | +| All (primary) | 0.2% | [0.1%, 0.3%] | 3 | +- The regressions in the primary benchmarks reverted back to their previous mean after a few PRs so I don't think this is necessarily worth looking further into. + + +Remove `HybridBitSet` [#133431](https://github.com/rust-lang/rust/pull/133431) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=cb2bd2bb06380896368b0edb02ada0117cc856be&end=5bbbc0938cfeb3dbd348d5258ddb6025bc8398c7&stat=instructions:u) + +| (instructions:u) | mean | range | count | +|:----------------------------------:|:----:|:------------:|:-----:| +| Regressions (primary) | 0.2% | [0.1%, 0.2%] | 6 | +| Regressions (secondary) | 0.2% | [0.1%, 0.3%] | 9 | +| Improvements (primary) | - | - | 0 | +| Improvements (secondary) | - | - | 0 | +| All (primary) | 0.2% | [0.1%, 0.2%] | 6 | +- Post merge perf results are a bit different from the pre-merge run, but they look similar enough that this doesn't require more investigation. + + +Rollup of 6 pull requests [#133659](https://github.com/rust-lang/rust/pull/133659) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=e93e096cc88728337fb41ff74431ebe71a1b4663&end=f981b2e27a7505468fac637ee67faef81b57fec0&stat=instructions:u) + +| (instructions:u) | mean | range | count | +|:----------------------------------:|:----:|:------------:|:-----:| +| Regressions (primary) | 0.4% | [0.3%, 0.4%] | 2 | +| Regressions (secondary) | 0.3% | [0.3%, 0.3%] | 1 | +| Improvements (primary) | - | - | 0 | +| Improvements (secondary) | - | - | 0 | +| All (primary) | 0.4% | [0.3%, 0.4%] | 2 | +- Perf regressions are small enough that I don't think this requires investigation especially considering that one of the primary regressions returned to its previous state a bit later on. + + +Make `compare_impl_item` into a query [#133365](https://github.com/rust-lang/rust/pull/133365) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=7442931d49b199ad0a1cc0f8ca54e327b5139b66&end=4af7fa79a0e829c0edcc93434a8c788be8ec58c6&stat=instructions:u) + +| (instructions:u) | mean | range | count | +|:----------------------------------:|:----:|:------------:|:-----:| +| Regressions (primary) | 0.3% | [0.2%, 0.5%] | 27 | +| Regressions (secondary) | 0.4% | [0.3%, 1.3%] | 7 | +| Improvements (primary) | - | - | 0 | +| Improvements (secondary) | - | - | 0 | +| All (primary) | 0.3% | [0.2%, 0.5%] | 27 | +- Perf regressions were excused [here](https://github.com/rust-lang/rust/pull/133365#issuecomment-2495766076) + + +fast-reject: add depth check [#133566](https://github.com/rust-lang/rust/pull/133566) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=caa81728c37f5ccfa9a0979574b9272a67f8a286&end=bd36e69d2533ee750e2d805915b8ca88d2825e0f&stat=instructions:u) + +| (instructions:u) | mean | range | count | +|:----------------------------------:|:----:|:------------:|:-----:| +| Regressions (primary) | 0.5% | [0.4%, 0.7%] | 13 | +| Regressions (secondary) | - | - | 0 | +| Improvements (primary) | - | - | 0 | +| Improvements (secondary) | - | - | 0 | +| All (primary) | 0.5% | [0.4%, 0.7%] | 13 | +- "Only a small regression, multiple strategies were tried here and in other PRs to get to this result — and it's a necessary hit." + + +#### Improvements + +Recover some lost performence from #132732 [#133509](https://github.com/rust-lang/rust/pull/133509) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=6b6a867ae9eac4e78d041ac4ee84be1072a48cf7&end=66adeaf46b7a646daeed29518ef76235fcdb9726&stat=instructions:u) + +| (instructions:u) | mean | range | count | +|:----------------------------------:|:-----:|:--------------:|:-----:| +| Regressions (primary) | - | - | 0 | +| Regressions (secondary) | - | - | 0 | +| Improvements (primary) | -1.7% | [-4.2%, -0.2%] | 8 | +| Improvements (secondary) | - | - | 0 | +| All (primary) | -1.7% | [-4.2%, -0.2%] | 8 | + + +Respect verify-llvm-ir option in the backend [#133499](https://github.com/rust-lang/rust/pull/133499) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=4af7fa79a0e829c0edcc93434a8c788be8ec58c6&end=8ac313bdbede661669d7a7b4504b0f74d4ed9222&stat=instructions:u) + +| (instructions:u) | mean | range | count | +|:----------------------------------:|:-----:|:--------------:|:-----:| +| Regressions (primary) | - | - | 0 | +| Regressions (secondary) | - | - | 0 | +| Improvements (primary) | -2.3% | [-8.1%, -0.2%] | 89 | +| Improvements (secondary) | -2.9% | [-9.8%, -0.3%] | 41 | +| All (primary) | -2.3% | [-8.1%, -0.2%] | 89 | + + +Stop cloning `Context` so much [#133345](https://github.com/rust-lang/rust/pull/133345) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=5e1440ae514d98ddfcbf1607acb64d41e07ef616&end=a522d78598415cdd614ccc6d961160f192f64b5c&stat=instructions:u) + +| (instructions:u) | mean | range | count | +|:----------------------------------:|:-----:|:--------------:|:-----:| +| Regressions (primary) | - | - | 0 | +| Regressions (secondary) | - | - | 0 | +| Improvements (primary) | -0.5% | [-1.3%, -0.1%] | 5 | +| Improvements (secondary) | -0.8% | [-0.8%, -0.8%] | 1 | +| All (primary) | -0.5% | [-1.3%, -0.1%] | 5 | + + +check local cache even if global is usable [#133626](https://github.com/rust-lang/rust/pull/133626) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=3bff51ea912d4dfd9caa1e3bc6f68352618208a7&end=32eea2f4460b06b12acc98050a4211b8c0ccfd67&stat=instructions:u) + +| (instructions:u) | mean | range | count | +|:----------------------------------:|:-----:|:--------------:|:-----:| +| Regressions (primary) | - | - | 0 | +| Regressions (secondary) | - | - | 0 | +| Improvements (primary) | -2.5% | [-3.1%, -1.8%] | 2 | +| Improvements (secondary) | -0.3% | [-0.3%, -0.2%] | 2 | +| All (primary) | -2.5% | [-3.1%, -1.8%] | 2 | + + +Get rid of HIR const checker [#133321](https://github.com/rust-lang/rust/pull/133321) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=41cbe3e4d1ef8de310fbbd77043082960def9446&end=efdd9e802053caeb52103945df858e87f837e59a&stat=instructions:u) + +| (instructions:u) | mean | range | count | +|:----------------------------------:|:-----:|:--------------:|:-----:| +| Regressions (primary) | - | - | 0 | +| Regressions (secondary) | 0.2% | [0.2%, 0.2%] | 1 | +| Improvements (primary) | -0.2% | [-0.3%, -0.1%] | 12 | +| Improvements (secondary) | -0.2% | [-0.4%, -0.1%] | 28 | +| All (primary) | -0.2% | [-0.3%, -0.1%] | 12 | + + +switch `jemalloc-sys` back to `tikv-jemalloc-sys`, and update to 0.6.0 [#133792](https://github.com/rust-lang/rust/pull/133792) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=8575f8f91bbd7dca529d362afc8117db74661c3b&end=490b2cc09860dd62a7595bb07364d71c12ce4e60&stat=instructions:u) + +| (instructions:u) | mean | range | count | +|:----------------------------------:|:-----:|:--------------:|:-----:| +| Regressions (primary) | - | - | 0 | +| Regressions (secondary) | - | - | 0 | +| Improvements (primary) | -0.1% | [-0.3%, -0.1%] | 30 | +| Improvements (secondary) | -0.1% | [-0.2%, -0.1%] | 8 | +| All (primary) | -0.1% | [-0.3%, -0.1%] | 30 | + + +#### Mixed + +Rollup of 12 pull requests [#133505](https://github.com/rust-lang/rust/pull/133505) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=dff3e7ccd4a18958c938136c4ccdc853fcc86194&end=dd2837ec5de4301a692e05a7c4475e980af57a57&stat=instructions:u) + +| (instructions:u) | mean | range | count | +|:----------------------------------:|:-----:|:--------------:|:-----:| +| Regressions (primary) | 0.7% | [0.7%, 0.7%] | 1 | +| Regressions (secondary) | 0.3% | [0.2%, 0.4%] | 4 | +| Improvements (primary) | -0.2% | [-0.2%, -0.1%] | 3 | +| Improvements (secondary) | -0.3% | [-1.9%, -0.1%] | 19 | +| All (primary) | 0.0% | [-0.2%, 0.7%] | 4 | +- The negative results are small enough (and reverted to their previous mean in a later PR) that this isn't worth investigating. + + +Do not unify dereferences of shared borrows in GVN [#133474](https://github.com/rust-lang/rust/pull/133474) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=c322cd5c5ac13b5ef16a487c889f8c148d8e3841&end=6b6a867ae9eac4e78d041ac4ee84be1072a48cf7&stat=instructions:u) + +| (instructions:u) | mean | range | count | +|:----------------------------------:|:-----:|:--------------:|:-----:| +| Regressions (primary) | 0.2% | [0.1%, 0.6%] | 14 | +| Regressions (secondary) | 0.2% | [0.1%, 0.4%] | 10 | +| Improvements (primary) | -1.7% | [-6.7%, -0.2%] | 9 | +| Improvements (secondary) | -0.2% | [-0.3%, -0.1%] | 6 | +| All (primary) | -0.5% | [-6.7%, 0.6%] | 23 | +- "This fixes a miscompilation due to an unsound MIR optimization which is disabled in this PR." + + +always create `DefId`s for anon consts [#133468](https://github.com/rust-lang/rust/pull/133468) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=9b4d7c6a40b328d212095c28670c629facf1557d&end=7e565cce6a03340edb4b9f56228cf5e480e24806&stat=instructions:u) + +| (instructions:u) | mean | range | count | +|:----------------------------------:|:-----:|:--------------:|:-----:| +| Regressions (primary) | - | - | 0 | +| Regressions (secondary) | 4.2% | [4.2%, 4.2%] | 1 | +| Improvements (primary) | -0.3% | [-0.3%, -0.3%] | 1 | +| Improvements (secondary) | -0.6% | [-1.0%, -0.3%] | 9 | +| All (primary) | -0.3% | [-0.3%, -0.3%] | 1 | +- "The coercions regression was noise and was fixed in the next merge" + + +Enable -Zshare-generics for inline(never) functions [#123244](https://github.com/rust-lang/rust/pull/123244) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=a2545fd6fc66b4323f555223a860c451885d1d2b&end=d53f0b1d8e261f2f3535f1cd165c714fc0b0b298&stat=instructions:u) + +| (instructions:u) | mean | range | count | +|:----------------------------------:|:-----:|:--------------:|:-----:| +| Regressions (primary) | 0.5% | [0.1%, 5.5%] | 58 | +| Regressions (secondary) | 0.6% | [0.1%, 1.6%] | 84 | +| Improvements (primary) | -0.7% | [-3.8%, -0.1%] | 44 | +| Improvements (secondary) | -1.6% | [-8.0%, -0.2%] | 25 | +| All (primary) | -0.0% | [-3.8%, 5.5%] | 102 | +- "Regressions remain pretty similar to what we saw before (primarily in incremental it looks like?), and bootstrap times reflect the expectation that this significantly helps with larger crate graphs where there's more opportunity for reuse. Binary size win is also pretty nice." (more context [here](https://github.com/rust-lang/rust/pull/123244#issuecomment-2156720584)) + + +Rollup of 8 pull requests [#133694](https://github.com/rust-lang/rust/pull/133694) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=8ac313bdbede661669d7a7b4504b0f74d4ed9222&end=6c76ed5503966c39381fac64eb905ac45e346695&stat=instructions:u) + +| (instructions:u) | mean | range | count | +|:----------------------------------:|:-----:|:--------------:|:-----:| +| Regressions (primary) | 0.3% | [0.1%, 0.7%] | 6 | +| Regressions (secondary) | 0.5% | [0.2%, 0.7%] | 19 | +| Improvements (primary) | - | - | 0 | +| Improvements (secondary) | -0.3% | [-0.3%, -0.3%] | 1 | +| All (primary) | 0.3% | [0.1%, 0.7%] | 6 | +- Most of the regressions are in doc-full scenarios, and I don't see anything that is obviously a culprit. + +## Nominated Issues + +[T-compiler](https://github.com/rust-lang/rust/issues?q=is%3Aopen+label%3AI-compiler-nominated) +- "Discuss extending the compiler team's review policy" [compiler-team#444](https://github.com/rust-lang/compiler-team/issues/444) + - @**Jieyou Xu** asking about the status. Could the context be reloaded, maybe update if needed and see if it's fit for merging? + - Original [meeting proposal](https://github.com/rust-lang/compiler-team/issues/444) with motivation + - [Current version of the policy](https://github.com/michaelwoerister/rust-forge/blob/review-policy/src/compiler/reviews.md?rgh-link-date=2021-07-20T14%3A17%3A47Z) + + +[RFC](https://github.com/rust-lang/rfcs/issues?q=is%3Aopen+label%3AI-compiler-nominated) +- No I-compiler-nominated RFCs this time. + +### Oldest PRs waiting for review + +[T-compiler](https://github.com/rust-lang/rust/pulls?q=is%3Apr+is%3Aopen+sort%3Aupdated-asc+label%3AS-waiting-on-review+draft%3Afalse+label%3AT-compiler) +- "Lint against `&T` to `&mut T` and `&T` to `&UnsafeCell` transmutes" [rust#128351](https://github.com/rust-lang/rust/pull/128351) + - cc @**Wesley Wiser** I *think* this is ripe for merging +- "Improve parse item fallback" [rust#125388](https://github.com/rust-lang/rust/pull/125388) (last review activity: 6 months ago) + - any taker for this one? Seems a little stuck. (Which area of the compiler? Diagnostics?) +- "When annotations needed, look at impls for more accurate suggestions" [rust#128653](https://github.com/rust-lang/rust/pull/128653) (last review activity: 3 months ago) + - cc: @**Michael Goulet (compiler-errors)** +- "Add diagnostics to "while loop" and "for loop" that note that it is always determined that it might iterate zero times." [rust#126510](https://github.com/rust-lang/rust/pull/126510) (last review activity: 3 months ago) + - cc @**Esteban Küber** +- "Apply dllimport in ThinLTO" [rust#122790](https://github.com/rust-lang/rust/pull/122790) (last review activity: 3 months ago) + - cc @**Wesley Wiser** +- "coverage: Support match statements in branch coverage" [rust#130744](https://github.com/rust-lang/rust/pull/130744) (last review activity: 2 months ago) + - cc: @**Zalathar** what do you think is the status here? +- "Remove allowing static_mut_refs lint" [rust#131439](https://github.com/rust-lang/rust/pull/131439) (last review activity: about 57 days ago) + - cc: @**Michael Goulet (compiler-errors)** +- "sess: default to v0 symbol mangling" [rust#89917](https://github.com/rust-lang/rust/pull/89917) + - Is there anyone interested in picking this up? + - Last status comment [is here](https://github.com/rust-lang/rust/pull/89917#issuecomment-2191736827), probably still actual +- "Stabilize target_feature_11" [rust#116114](https://github.com/rust-lang/rust/pull/116114) + - @**RalfJ** do you know the status from T-lang side? I think it was ok'ed [comment](https://github.com/rust-lang/lang-team/issues/235#issuecomment-2323914989), correct? + +Next meetings' agenda draft: [hackmd link](https://hackmd.io/52nD0SaYTmyjZO7BO7aF9Q) diff --git a/content/minutes/triage-meeting/T-compiler Meeting Agenda 2024-12-12.md b/content/minutes/triage-meeting/T-compiler Meeting Agenda 2024-12-12.md new file mode 100644 index 00000000..96ce547e --- /dev/null +++ b/content/minutes/triage-meeting/T-compiler Meeting Agenda 2024-12-12.md @@ -0,0 +1,287 @@ +--- +tags: weekly, rustc +type: docs +note_id: 52nD0SaYTmyjZO7BO7aF9Q +--- + +# T-compiler Meeting Agenda 2024-12-12 + +## Announcements + +- Team compiler is looking for someone taking on a 4-weekly rotation shift on the rustc performance triaging (details on [Zulip thread](https://rust-lang.zulipchat.com/#narrow/channel/131828-t-compiler/topic/volunteers.20to.20take.20my.20~4-weekly.20rustc-perf.20slot.3F/near/486629784)) +- The review policy for contributors has been published: https://forge.rust-lang.org/compiler/reviews.html + - Comments and amendments are welcome. Discuss on Zulip (contrib-private) or on [rust-forge#790](https://github.com/rust-lang/rust-forge/pull/790) +- Design meeting: LLVM optional target-cpu features enabled by default ([compiler-team#752](https://github.com/rust-lang/compiler-team/issues/752)) + - Continue discussion of [rust-lang/rust#125033](https://github.com/rust-lang/rust/issues/125033) +- 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 @_**Wesley Wiser** so we can pass it along). + +### Other WG meetings + +- @_**davidtwco** office hours + +## MCPs/FCPs + +- New MCPs (take a look, see if you like them!) + - "setup typos check in CI (for rust repo)" [compiler-team#817](https://github.com/rust-lang/compiler-team/issues/817) ([Zulip](https://rust-lang.zulipchat.com/#narrow/stream/233931-xxx/topic/setup.20typos.20check.20in.20CI.20.28for.20rust.20repo.29.20compiler-team.23817)) + - concern: [contributor friction](https://github.com/rust-lang/compiler-team/issues/817#issuecomment-2525266792) + - "Use debuginfo for short backtrace printing" [compiler-team#818](https://github.com/rust-lang/compiler-team/issues/818) ([Zulip](https://rust-lang.zulipchat.com/#narrow/stream/233931-xxx/topic/Use.20debuginfo.20for.20short.20backtrace.20printing.20compiler-team.23818)) +- Old MCPs (stale MCP might be closed as per [MCP procedure](https://forge.rust-lang.org/compiler/mcp.html#when-should-major-change-proposals-be-closed)) + - None at this time +- Old MCPs (not seconded, take a look) + - "Add hygiene attributes to compile expanded source code" [compiler-team#692](https://github.com/rust-lang/compiler-team/issues/692) ([Zulip](https://rust-lang.zulipchat.com/#narrow/stream/233931-xxx/topic/Add.20option.20to.20compile.20expanded.20ASTs.20for.20h.E2.80.A6.20compiler-team.23692)) (last review activity: 2 months ago) + - "Add Hotpatch flag" [compiler-team#745](https://github.com/rust-lang/compiler-team/issues/745) ([Zulip](https://rust-lang.zulipchat.com/#narrow/stream/233931-xxx/topic/Add.20Hotpatch.20flag.20compiler-team.23745)) (last review activity: 2 months ago) + - "Make the test cfg a userspace check-cfg" [compiler-team#785](https://github.com/rust-lang/compiler-team/issues/785) ([Zulip](https://rust-lang.zulipchat.com/#narrow/stream/233931-xxx/topic/Make.20the.20test.20cfg.20a.20userspace.20check-cfg.20compiler-team.23785)) (last review activity: about 6 days ago) + - "Policy change around adding new unstable flags" [compiler-team#787](https://github.com/rust-lang/compiler-team/issues/787) ([Zulip](https://rust-lang.zulipchat.com/#narrow/stream/233931-xxx/topic/Policy.20change.20around.20adding.20new.20unstable.20.E2.80.A6.20compiler-team.23787)) (last review activity: about 55 days ago) + - "Normalize FileCheck directives" [compiler-team#789](https://github.com/rust-lang/compiler-team/issues/789) ([Zulip](https://rust-lang.zulipchat.com/#narrow/stream/233931-xxx/topic/Normalize.20FileCheck.20directives.20compiler-team.23789)) (last review activity: about 55 days ago) + - "Relink, don't rebuild" [compiler-team#790](https://github.com/rust-lang/compiler-team/issues/790) ([Zulip](https://rust-lang.zulipchat.com/#narrow/stream/233931-xxx/topic/Relink.2C.20don.27t.20rebuild.20compiler-team.23790)) (last review activity: about 55 days ago) + - "Create an avr-unknown-none target" [compiler-team#800](https://github.com/rust-lang/compiler-team/issues/800) ([Zulip](https://rust-lang.zulipchat.com/#narrow/stream/233931-xxx/topic/Create.20an.20avr-unknown-unknown.20target.20compiler-team.23800)) (last review activity: about 33 days ago) +- Pending FCP requests (check your boxes!) + - "sanitizers: Stabilize AddressSanitizer and LeakSanitizer for the Tier 1 targets" [rust#123617](https://github.com/rust-lang/rust/pull/123617) + - "const-eval: detect more pointers as definitely not-null" [rust#133700](https://github.com/rust-lang/rust/pull/133700) +- Things in FCP (make sure you're good with it) + - "Set the baseline Solaris version to 11.4" [compiler-team#812](https://github.com/rust-lang/compiler-team/issues/812) ([Zulip](https://rust-lang.zulipchat.com/#narrow/stream/233931-xxx/topic/Set.20the.20baseline.20Solaris.20version.20to.2011.2E4.20compiler-team.23812)) + - "Remove -Zinline-in-all-cgus" [compiler-team#814](https://github.com/rust-lang/compiler-team/issues/814) ([Zulip](https://rust-lang.zulipchat.com/#narrow/stream/233931-xxx/topic/Remove.20-Zinline-in-all-cgus.20compiler-team.23814)) +- Accepted MCPs + - "Promote OpenHarmony targets to Tier 2 with Host Tools" [compiler-team#811](https://github.com/rust-lang/compiler-team/issues/811) ([Zulip](https://rust-lang.zulipchat.com/#narrow/stream/233931-xxx/topic/Promote.20OpenHarmony.20targets.20to.20Tier.202.20wit.E2.80.A6.20compiler-team.23811)) +- MCPs blocked on unresolved concerns + - "Add `evex512` target feature for AVX10" [compiler-team#778](https://github.com/rust-lang/compiler-team/issues/778) ([Zulip](https://rust-lang.zulipchat.com/#narrow/stream/233931-xxx/topic/Add.20.60evex512.60.20target.20feature.20for.20AVX10.20compiler-team.23778)) (last review activity: about 7 days ago) + - concern: [design-around-naming-scheme](https://github.com/rust-lang/compiler-team/issues/778#issuecomment-2514307904) + - "Retire the mailing list and make all decisions on zulip" [compiler-team#649](https://github.com/rust-lang/compiler-team/issues/649) ([Zulip](https://rust-lang.zulipchat.com/#narrow/stream/233931-xxx/topic/Retire.20the.20mailing.20list.20and.20make.20all.20deci.E2.80.A6.20compiler-team.23649)) + - concern: [automatic-sync](https://github.com/rust-lang/compiler-team/issues/649#issuecomment-1618902660) +- Finalized FCPs (disposition merge) + - "Add `--print host-tuple` to print host target tuple" [rust#125579](https://github.com/rust-lang/rust/pull/125579) + - "make unsupported_calling_conventions a hard error" [rust#129935](https://github.com/rust-lang/rust/pull/129935) + - "Fix ICE when passing DefId-creating args to legacy_const_generics." [rust#130443](https://github.com/rust-lang/rust/pull/130443) + - "Stabilize WebAssembly `multivalue`, `reference-types`, and `tail-call` target features" [rust#131080](https://github.com/rust-lang/rust/pull/131080) + - "Lint on combining `#[no_mangle]` and `#[export_name]`" [rust#131558](https://github.com/rust-lang/rust/pull/131558) +- Other teams finalized FCPs + - "Add lint against function pointer comparisons" [rust#118833](https://github.com/rust-lang/rust/pull/118833) + - "Fixup Windows verbatim paths when used with the `include!` macro" [rust#125205](https://github.com/rust-lang/rust/pull/125205) + - "Allow dropping `dyn Trait` principal" [rust#126660](https://github.com/rust-lang/rust/pull/126660) + - "atomics: allow atomic and non-atomic reads to race" [rust#128778](https://github.com/rust-lang/rust/pull/128778) + - "Lint against getting pointers from immediately dropped temporaries" [rust#128985](https://github.com/rust-lang/rust/pull/128985) + - "Do not consider match/let/ref of place that evaluates to `!` to diverge, disallow coercions from them too" [rust#129392](https://github.com/rust-lang/rust/pull/129392) + - "Make deprecated_cfg_attr_crate_type_name a hard error" [rust#129670](https://github.com/rust-lang/rust/pull/129670) + - "Stabilize expr_2021 fragment specifier in all editions" [rust#129972](https://github.com/rust-lang/rust/pull/129972) + - "Check elaborated projections from dyn don't mention unconstrained late bound lifetimes" [rust#130367](https://github.com/rust-lang/rust/pull/130367) + - "Finish stabilization of `result_ffi_guarantees`" [rust#130628](https://github.com/rust-lang/rust/pull/130628) + - "Stabilize const `ptr::write*` and `mem::replace`" [rust#130954](https://github.com/rust-lang/rust/pull/130954) + - "Stabilize s390x inline assembly" [rust#131258](https://github.com/rust-lang/rust/pull/131258) + - "Stabilize Arm64EC inline assembly" [rust#131781](https://github.com/rust-lang/rust/pull/131781) + - "Always display first line of impl blocks even when collapsed" [rust#132155](https://github.com/rust-lang/rust/pull/132155) + - "mark is_val_statically_known intrinsic as stably const-callable" [rust#132449](https://github.com/rust-lang/rust/pull/132449) + +### WG checkins + +None + +## Backport nominations + +[T-compiler beta](https://github.com/rust-lang/rust/issues?q=is%3Aall+label%3Abeta-nominated+-label%3Abeta-accepted+label%3AT-compiler) / [T-compiler stable](https://github.com/rust-lang/rust/issues?q=is%3Aall+label%3Astable-nominated+-label%3Astable-accepted+label%3AT-compiler) +- No beta nominations for `T-compiler` this time. +- No stable nominations for `T-compiler` this time. + +[T-types stable](https://github.com/rust-lang/rust/issues?q=is%3Aall+label%3Abeta-nominated+-label%3Abeta-accepted+label%3AT-types) / [T-types beta](https://github.com/rust-lang/rust/issues?q=is%3Aall+label%3Astable-nominated+-label%3Astable-accepted+label%3AT-types) +- No beta nominations for `T-types` this time. +- No stable nominations for `T-types` this time. + +## PRs S-waiting-on-team + +[T-compiler](https://github.com/rust-lang/rust/pulls?q=is%3Aopen+label%3AS-waiting-on-team+label%3AT-compiler) +- [Issues in progress or waiting on other teams](https://hackmd.io/XYr1BrOWSiqCrl8RCWXRaQ) + +## Issues of Note + +### One issue not prioritized +- [Implementation of trait "not general enough" in nightly, works fine on stable · Issue #131488 · rust-lang/rust](https://github.com/rust-lang/rust/issues/131488) + - cc @**Michael Goulet (compiler-errors)** + - This is now a regression on stable, relevant changes in #124336 + - As per [comment](https://github.com/rust-lang/rust/issues/131488#issuecomment-2413497748) from @**lqd**: it is slightly unclear how much is intended (because it fixes a soundness issue) or unintended behaviour. + - prioritization [Zulip thread](https://rust-lang.zulipchat.com/#narrow/channel/245100-t-compiler.2Fwg-prioritization.2Falerts/topic/.23131488.20Implementation.20of.20trait.20.22not.20general.20enough.22.20in.20nig.E2.80.A6/near/483459975) + +### Short Summary + +- [0 T-compiler P-critical issues](https://github.com/rust-lang/rust/issues?q=is%3Aopen+label%3AT-compiler+label%3AP-critical) + - [0 of those are unassigned](https://github.com/rust-lang/rust/issues?q=is%3Aopen+label%3AT-compiler+label%3AP-critical+no%3Aassignee) +- [59 T-compiler P-high issues](https://github.com/rust-lang/rust/issues?q=is%3Aopen+label%3AT-compiler+label%3AP-high) + - [37 of those are unassigned](https://github.com/rust-lang/rust/issues?q=is%3Aopen+label%3AT-compiler+label%3AP-high+no%3Aassignee) +- [0 P-critical, 0 P-high, 0 P-medium, 0 P-low regression-from-stable-to-beta](https://github.com/rust-lang/rust/labels/regression-from-stable-to-beta) +- [0 P-critical, 0 P-high, 1 P-medium, 0 P-low regression-from-stable-to-nightly](https://github.com/rust-lang/rust/labels/regression-from-stable-to-nightly) +- [0 P-critical, 33 P-high, 100 P-medium, 19 P-low regression-from-stable-to-stable](https://github.com/rust-lang/rust/labels/regression-from-stable-to-stable) + +### P-critical + +[T-compiler](https://github.com/rust-lang/rust/issues?q=is%3Aopen+label%3AP-critical+label%3AT-compiler) +- No `P-critical` issues for `T-compiler` this time. + +[T-types](https://github.com/rust-lang/rust/issues?q=is%3Aopen+label%3AP-critical+label%3AT-types) +- No `P-critical` issues for `T-types` this time. + +### P-high regressions + +[P-high beta regressions](https://github.com/rust-lang/rust/issues?q=is%3Aopen+label%3Aregression-from-stable-to-beta+label%3AP-high+-label%3AT-infra+-label%3AT-libs+-label%3AT-libs-api+-label%3AT-release+-label%3AT-rustdoc+-label%3AT-core) +- No `P-high` beta regressions this time. + +[Unassigned P-high nightly regressions](https://github.com/rust-lang/rust/issues?q=is%3Aopen+label%3Aregression-from-stable-to-nightly+label%3AP-high+no%3Aassignee+-label%3AT-infra+-label%3AT-libs+-label%3AT-libs-api+-label%3AT-release+-label%3AT-rustdoc+-label%3AT-core+) +- No unassigned `P-high` nightly regressions this time. + +## Performance logs + +> [triage logs for 2024-12-09](https://github.com/Mark-Simulacrum/rustc-perf/blob/triage/triage/2024-12-09.md) + +A pretty quiet week, with both few PRs landed and no significant changes in performance. + +Triage done by **@simulacrum**. +Revision range: [490b2cc0..1b3fb316](https://perf.rust-lang.org/?start=490b2cc09860dd62a7595bb07364d71c12ce4e60&end=1b3fb316751227d30b1523ed0e3f00d83956d4d0&absolute=false&stat=instructions%3Au) + +**Summary**: + +| (instructions:u) | mean | range | count | +|:------------------------:|:-----:|:--------------:|:-----:| +| Regressions (primary) | 0.3% | [0.1%, 1.4%] | 84 | +| Regressions (secondary) | 0.3% | [0.1%, 0.7%] | 45 | +| Improvements (primary) | -0.4% | [-1.2%, -0.1%] | 42 | +| Improvements (secondary) | -0.8% | [-1.2%, -0.4%] | 19 | +| All (primary) | 0.1% | [-1.2%, 1.4%] | 126 | + + +0 Regressions, 0 Improvements, 7 Mixed; 4 of them in rollups +25 artifact comparisons made in total + +#### Regressions + +None this week. + +#### Improvements + +Remove polymorphization [#133883](https://github.com/rust-lang/rust/pull/133883) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=75716b45105e443199ce9800c7009ddfd6d2be53&end=ca13e9169fbbbb126190631b5a1e3e20053a52c1&stat=instructions:u) + +| (instructions:u) | mean | range | count | +|:----------------------------------:|:-----:|:--------------:|:-----:| +| Regressions (primary) | - | - | 0 | +| Regressions (secondary) | 0.5% | [0.3%, 0.7%] | 6 | +| Improvements (primary) | -0.5% | [-1.3%, -0.1%] | 91 | +| Improvements (secondary) | -0.7% | [-1.7%, -0.3%] | 21 | +| All (primary) | -0.5% | [-1.3%, -0.1%] | 91 | + +This is essentially a solid improvement. We still did the evaluation of +polymorphization even if it wasn't actually enabled, so this just saves that +time by dropping all of that computation. + +#### Mixed + +Rollup of 6 pull requests [#133841](https://github.com/rust-lang/rust/pull/133841) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=2633e019298f8d9f671c8f3d0d3348ce6fa1b8aa&end=733616f7236b4be140ce851a30b3bb06532b9364&stat=instructions:u) + +| (instructions:u) | mean | range | count | +|:----------------------------------:|:-----:|:--------------:|:-----:| +| Regressions (primary) | 0.7% | [0.2%, 1.4%] | 10 | +| Regressions (secondary) | 0.6% | [0.6%, 0.6%] | 1 | +| Improvements (primary) | -0.3% | [-0.5%, -0.1%] | 2 | +| Improvements (secondary) | -0.2% | [-0.4%, -0.1%] | 5 | +| All (primary) | 0.5% | [-0.5%, 1.4%] | 12 | + +Mixed results, but seems like a real regression on a few larger benchmarks in +opt, non-incremental scenarios. Possibly due to +https://github.com/rust-lang/rust/pull/133798, trying an unrolled build to +verify. + +Rollup of 8 pull requests [#133940](https://github.com/rust-lang/rust/pull/133940) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=c94848c046d29f9a80c09aae758e27e418a289f2&end=706141b8d9090228343340378b1d4a2b095fa1fb&stat=instructions:u) + +| (instructions:u) | mean | range | count | +|:----------------------------------:|:-----:|:--------------:|:-----:| +| Regressions (primary) | 0.4% | [0.1%, 0.9%] | 87 | +| Regressions (secondary) | 0.4% | [0.1%, 1.4%] | 31 | +| Improvements (primary) | - | - | 0 | +| Improvements (secondary) | -1.7% | [-1.9%, -1.6%] | 6 | +| All (primary) | 0.4% | [0.1%, 0.9%] | 87 | + +Root-caused and discussed here: +https://github.com/rust-lang/rust/pull/133607#issuecomment-2524194699, some +optimizations expected to reduce the impact. + +Implementation of `fmt::FormattingOptions` [#118159](https://github.com/rust-lang/rust/pull/118159) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=8dc83770f748c6cd16b342889ca2240397c19534&end=75716b45105e443199ce9800c7009ddfd6d2be53&stat=instructions:u) + +| (instructions:u) | mean | range | count | +|:----------------------------------:|:-----:|:--------------:|:-----:| +| Regressions (primary) | 0.3% | [0.2%, 0.4%] | 2 | +| Regressions (secondary) | 0.3% | [0.3%, 0.3%] | 1 | +| Improvements (primary) | -0.4% | [-0.4%, -0.4%] | 1 | +| Improvements (secondary) | - | - | 0 | +| All (primary) | 0.1% | [-0.4%, 0.4%] | 3 | + +A few regressions in primary benchmarks, but not worth follow-up given the +small magnitude, small number of affected builds, lack of clear `cycles` +impact, etc. + +Rollup of 7 pull requests [#133978](https://github.com/rust-lang/rust/pull/133978) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=cdb89d6b15056a5cfa8932231360ae358b08983f&end=9c707a8b769523bb6768bf58e74fa2c39cc24844&stat=instructions:u) + +| (instructions:u) | mean | range | count | +|:----------------------------------:|:-----:|:--------------:|:-----:| +| Regressions (primary) | 0.3% | [0.3%, 0.3%] | 1 | +| Regressions (secondary) | 0.3% | [0.2%, 0.3%] | 9 | +| Improvements (primary) | - | - | 0 | +| Improvements (secondary) | -0.2% | [-0.3%, -0.1%] | 2 | +| All (primary) | 0.3% | [0.3%, 0.3%] | 1 | + +Expected regression in doc builds due to additional trait implementations in the standard library. + +Rollup of 7 pull requests [#134033](https://github.com/rust-lang/rust/pull/134033) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=f415c07494b98e4559e4b13a9c5f867b0e6b2444&end=f33a8c6426074b7ce8d08740e9805fdca96ee150&stat=instructions:u) + +| (instructions:u) | mean | range | count | +|:----------------------------------:|:-----:|:--------------:|:-----:| +| Regressions (primary) | 0.3% | [0.2%, 0.3%] | 6 | +| Regressions (secondary) | 0.3% | [0.2%, 0.5%] | 6 | +| Improvements (primary) | - | - | 0 | +| Improvements (secondary) | -1.3% | [-2.2%, -0.3%] | 2 | +| All (primary) | 0.3% | [0.2%, 0.3%] | 6 | + +Single benchmark regression, limited to incremental scenarios. Seems plausible +this is due to #133992, which obviously does more (necessary for correctness) +work. + +Introduce `MixedBitSet` [#133891](https://github.com/rust-lang/rust/pull/133891) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=1b3fb316751227d30b1523ed0e3f00d83956d4d0&end=f6cb952dc115fd1311b02b694933e31d8dc8b002&stat=instructions:u) + +| (instructions:u) | mean | range | count | +|:----------------------------------:|:-----:|:--------------:|:-----:| +| Regressions (primary) | - | - | 0 | +| Regressions (secondary) | 0.6% | [0.2%, 1.0%] | 8 | +| Improvements (primary) | -0.6% | [-1.3%, -0.2%] | 67 | +| Improvements (secondary) | -0.7% | [-2.0%, -0.2%] | 28 | +| All (primary) | -0.6% | [-1.3%, -0.2%] | 67 | + +Expected changes, primarily an improvement rather than a regression. Overall a positive change. + +## Nominated Issues + +[T-compiler](https://github.com/rust-lang/rust/issues?q=is%3Aopen+label%3AI-compiler-nominated) +- "Make the wasm_c_abi future compat warning a hard error" [rust#133951](https://github.com/rust-lang/rust/pull/133951) + - nominated by @**Jubilee** ([comment](https://github.com/rust-lang/rust/pull/133951#issuecomment-2524467228)) + - formally deprecate the old (and broken) C abi for target `wasm32-unknown-unknown` + - This will break ~85 versions of a foundation ecosystem crate (`wasm-bindgen`) but also just fix a bug. Projects downstream will need to upgrade to `wasm-bindgen >= v0.2.88` + - @_**Alex Crichton** (active in the WASM group) approved this change + - Tracking issue #122532 +- "Make target-spec json file extensions case-insensitive" [rust#127389](https://github.com/rust-lang/rust/pull/127389) + - nominated by @**davidtwco** + - Ref. issue #127387 about case insensitive `.json`. The usecase stated seems to support "Old OS and old file-systems such as FAT" and other not so old, such as Cortex A ([comment](https://github.com/rust-lang/rust/issues/127387#issuecomment-2213645373)). + - Perf. cost of `eq_ignore_ascii_case` for just the extension seems to be negligible + - Cargo does not support it ([comment](https://github.com/rust-lang/rust/pull/127389#issuecomment-2214414963)) but cargo wouldn't run anyway on such old systems. They do have some concerns about keeping consistency on this with rustc ([comment](https://github.com/rust-lang/rust/pull/127389#issuecomment-2524171145)) and other tools like rustup, clippy, rustfmt + - @**davidtwco** is ok with rustc and cargo diverging behaviour about this ([comment](https://github.com/rust-lang/rust/pull/127389#issuecomment-2538737662)) + +[RFC](https://github.com/rust-lang/rfcs/issues?q=is%3Aopen+label%3AI-compiler-nominated) +- No I-compiler-nominated RFCs this time. + +### Oldest PRs waiting for review + +[T-compiler](https://github.com/rust-lang/rust/pulls?q=is%3Apr+is%3Aopen+sort%3Aupdated-asc+label%3AS-waiting-on-review+draft%3Afalse+label%3AT-compiler) +- "add error message for c# style named arguments" [rust#118733](https://github.com/rust-lang/rust/pull/118733) (last review activity: 11 months ago) + - cc @**Esteban Küber** +- "Silence errors in expressions caused by bare traits in paths in 2021 edition" [rust#125784](https://github.com/rust-lang/rust/pull/125784) (last review activity: 6 months ago) + - cc: @**Esteban Küber** for a rebase then cc: @_**León Orell Liehr (fmease)** +- "[Coverage][MCDC] Do not initialize mcdc parameters for instances containing no mcdc statements" [rust#129989](https://github.com/rust-lang/rust/pull/129989) + - cc: @**Zalathar** +- "JumpThreading: fix bitwise not on non-booleans" [rust#131203](https://github.com/rust-lang/rust/pull/131203) (last review activity: about 44 days ago) + - cc @**cjgillot** +- "[macro_metavar_expr_concat] Fix #128346" [rust#131522](https://github.com/rust-lang/rust/pull/131522) (last review activity: about 45 days ago) + - cc: @**yukang** + +Next meetings' agenda draft: [hackmd link](https://hackmd.io/x1y_Il7xQueg05-PaGbAbg) diff --git a/content/minutes/triage-meeting/T-compiler Meeting Agenda 2024-12-19.md b/content/minutes/triage-meeting/T-compiler Meeting Agenda 2024-12-19.md new file mode 100644 index 00000000..1f17ca76 --- /dev/null +++ b/content/minutes/triage-meeting/T-compiler Meeting Agenda 2024-12-19.md @@ -0,0 +1,171 @@ +--- +tags: weekly, rustc +type: docs +note_id: x1y_Il7xQueg05-PaGbAbg +--- + +# T-compiler Meeting Agenda 2024-12-19 + +## Announcements + +- Steering meeting: Rust Project Goal Review +- T-compiler planning meeting +- 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 @_**Wesley Wiser** so we can pass it along). + +### Other WG meetings + +- Stable MIR Weekly Meeting +- @_**davidtwco** office hours + +## MCPs/FCPs + +- New MCPs (take a look, see if you like them!) + - None +- Old MCPs (stale MCP might be closed as per [MCP procedure](https://forge.rust-lang.org/compiler/mcp.html#when-should-major-change-proposals-be-closed)) + - None at this time +- Old MCPs (not seconded, take a look) + - "Add hygiene attributes to compile expanded source code" [compiler-team#692](https://github.com/rust-lang/compiler-team/issues/692) ([Zulip](https://rust-lang.zulipchat.com/#narrow/stream/233931-xxx/topic/Add.20option.20to.20compile.20expanded.20ASTs.20for.20h.E2.80.A6.20compiler-team.23692)) (last review activity: 3 months ago) + - "Add Hotpatch flag" [compiler-team#745](https://github.com/rust-lang/compiler-team/issues/745) ([Zulip](https://rust-lang.zulipchat.com/#narrow/stream/233931-xxx/topic/Add.20Hotpatch.20flag.20compiler-team.23745)) (last review activity: 2 months ago) + - "Add `evex512` target feature for AVX10" [compiler-team#778](https://github.com/rust-lang/compiler-team/issues/778) ([Zulip](https://rust-lang.zulipchat.com/#narrow/stream/233931-xxx/topic/Add.20.60evex512.60.20target.20feature.20for.20AVX10.20compiler-team.23778)) (last review activity: about 13 days ago) + - concern: [design-around-naming-scheme](https://github.com/rust-lang/compiler-team/issues/778#issuecomment-2514307904) + - "Policy change around adding new unstable flags" [compiler-team#787](https://github.com/rust-lang/compiler-team/issues/787) ([Zulip](https://rust-lang.zulipchat.com/#narrow/stream/233931-xxx/topic/Policy.20change.20around.20adding.20new.20unstable.20.E2.80.A6.20compiler-team.23787)) (last review activity: 2 months ago) + - "Normalize FileCheck directives" [compiler-team#789](https://github.com/rust-lang/compiler-team/issues/789) ([Zulip](https://rust-lang.zulipchat.com/#narrow/stream/233931-xxx/topic/Normalize.20FileCheck.20directives.20compiler-team.23789)) (last review activity: 2 months ago) + - "Relink, don't rebuild" [compiler-team#790](https://github.com/rust-lang/compiler-team/issues/790) ([Zulip](https://rust-lang.zulipchat.com/#narrow/stream/233931-xxx/topic/Relink.2C.20don.27t.20rebuild.20compiler-team.23790)) (last review activity: 2 months ago) + - "Create an avr-unknown-none target" [compiler-team#800](https://github.com/rust-lang/compiler-team/issues/800) ([Zulip](https://rust-lang.zulipchat.com/#narrow/stream/233931-xxx/topic/Create.20an.20avr-unknown-unknown.20target.20compiler-team.23800)) (last review activity: about 39 days ago) +- Pending FCP requests (check your boxes!) + - "sanitizers: Stabilize AddressSanitizer and LeakSanitizer for the Tier 1 targets" [rust#123617](https://github.com/rust-lang/rust/pull/123617) + - "const-eval: detect more pointers as definitely not-null" [rust#133700](https://github.com/rust-lang/rust/pull/133700) +- Things in FCP (make sure you're good with it) + - "Make the test cfg a userspace check-cfg" [compiler-team#785](https://github.com/rust-lang/compiler-team/issues/785) ([Zulip](https://rust-lang.zulipchat.com/#narrow/stream/233931-xxx/topic/Make.20the.20test.20cfg.20a.20userspace.20check-cfg.20compiler-team.23785)) + - "Use debuginfo for short backtrace printing" [compiler-team#818](https://github.com/rust-lang/compiler-team/issues/818) ([Zulip](https://rust-lang.zulipchat.com/#narrow/stream/233931-xxx/topic/Use.20debuginfo.20for.20short.20backtrace.20printing.20compiler-team.23818)) + - "Policy: rustc can be run on case-insensitive filesystems but works in a case-sensitive way" [compiler-team#819](https://github.com/rust-lang/compiler-team/issues/819) ([Zulip](https://rust-lang.zulipchat.com/#narrow/stream/233931-xxx/topic/Policy.3A.20case.20insensitive.20filesystems.20are.20.E2.80.A6.20compiler-team.23819)) + - "T-compiler Supplemental Tool Policy (Linker Scripts, etc.)" [compiler-team#820](https://github.com/rust-lang/compiler-team/issues/820) ([Zulip](https://rust-lang.zulipchat.com/#narrow/stream/233931-xxx/topic/T-compiler.20Supplemental.20Tool.20Policy.20.28Link.E2.80.A6.20compiler-team.23820)) +- Accepted MCPs + - "Promote OpenHarmony targets to Tier 2 with Host Tools" [compiler-team#811](https://github.com/rust-lang/compiler-team/issues/811) ([Zulip](https://rust-lang.zulipchat.com/#narrow/stream/233931-xxx/topic/Promote.20OpenHarmony.20targets.20to.20Tier.202.20wit.E2.80.A6.20compiler-team.23811)) + - "Set the baseline Solaris version to 11.4" [compiler-team#812](https://github.com/rust-lang/compiler-team/issues/812) ([Zulip](https://rust-lang.zulipchat.com/#narrow/stream/233931-xxx/topic/Set.20the.20baseline.20Solaris.20version.20to.2011.2E4.20compiler-team.23812)) + - "Remove -Zinline-in-all-cgus" [compiler-team#814](https://github.com/rust-lang/compiler-team/issues/814) ([Zulip](https://rust-lang.zulipchat.com/#narrow/stream/233931-xxx/topic/Remove.20-Zinline-in-all-cgus.20compiler-team.23814)) +- MCPs blocked on unresolved concerns + - "Retire the mailing list and make all decisions on zulip" [compiler-team#649](https://github.com/rust-lang/compiler-team/issues/649) ([Zulip](https://rust-lang.zulipchat.com/#narrow/stream/233931-xxx/topic/Retire.20the.20mailing.20list.20and.20make.20all.20deci.E2.80.A6.20compiler-team.23649)) + - concern: [automatic-sync](https://github.com/rust-lang/compiler-team/issues/649#issuecomment-1618902660) + - "setup typos check in CI (for rust repo)" [compiler-team#817](https://github.com/rust-lang/compiler-team/issues/817) ([Zulip](https://rust-lang.zulipchat.com/#narrow/stream/233931-xxx/topic/setup.20typos.20check.20in.20CI.20.28for.20rust.20repo.29.20compiler-team.23817)) + - concern: [contributor friction](https://github.com/rust-lang/compiler-team/issues/817#issuecomment-2525266792) +- Finalized FCPs (disposition merge) + - "Add `--print host-tuple` to print host target tuple" [rust#125579](https://github.com/rust-lang/rust/pull/125579) + - "make unsupported_calling_conventions a hard error" [rust#129935](https://github.com/rust-lang/rust/pull/129935) + - "Fix ICE when passing DefId-creating args to legacy_const_generics." [rust#130443](https://github.com/rust-lang/rust/pull/130443) + - "Stabilize WebAssembly `multivalue`, `reference-types`, and `tail-call` target features" [rust#131080](https://github.com/rust-lang/rust/pull/131080) + - "Lint on combining `#[no_mangle]` and `#[export_name]`" [rust#131558](https://github.com/rust-lang/rust/pull/131558) +- Other teams finalized FCPs + - "Add lint against function pointer comparisons" [rust#118833](https://github.com/rust-lang/rust/pull/118833) + - "Fixup Windows verbatim paths when used with the `include!` macro" [rust#125205](https://github.com/rust-lang/rust/pull/125205) + - "Allow dropping `dyn Trait` principal" [rust#126660](https://github.com/rust-lang/rust/pull/126660) + - "atomics: allow atomic and non-atomic reads to race" [rust#128778](https://github.com/rust-lang/rust/pull/128778) + - "Lint against getting pointers from immediately dropped temporaries" [rust#128985](https://github.com/rust-lang/rust/pull/128985) + - "Do not consider match/let/ref of place that evaluates to `!` to diverge, disallow coercions from them too" [rust#129392](https://github.com/rust-lang/rust/pull/129392) + - "Make deprecated_cfg_attr_crate_type_name a hard error" [rust#129670](https://github.com/rust-lang/rust/pull/129670) + - "Stabilize expr_2021 fragment specifier in all editions" [rust#129972](https://github.com/rust-lang/rust/pull/129972) + - "Check elaborated projections from dyn don't mention unconstrained late bound lifetimes" [rust#130367](https://github.com/rust-lang/rust/pull/130367) + - "Finish stabilization of `result_ffi_guarantees`" [rust#130628](https://github.com/rust-lang/rust/pull/130628) + - "Stabilize const `ptr::write*` and `mem::replace`" [rust#130954](https://github.com/rust-lang/rust/pull/130954) + - "Stabilize s390x inline assembly" [rust#131258](https://github.com/rust-lang/rust/pull/131258) + - "Stabilize Arm64EC inline assembly" [rust#131781](https://github.com/rust-lang/rust/pull/131781) + - "Always display first line of impl blocks even when collapsed" [rust#132155](https://github.com/rust-lang/rust/pull/132155) + - "rework winnowing to sensibly handle global where-bounds" [rust#132325](https://github.com/rust-lang/rust/pull/132325) + - "mark is_val_statically_known intrinsic as stably const-callable" [rust#132449](https://github.com/rust-lang/rust/pull/132449) + - "Fix ICE when multiple supertrait substitutions need assoc but only one is provided" [rust#133392](https://github.com/rust-lang/rust/pull/133392) + +## Backport nominations + +[T-compiler beta](https://github.com/rust-lang/rust/issues?q=is%3Aall+label%3Abeta-nominated+-label%3Abeta-accepted+label%3AT-compiler) / [T-compiler stable](https://github.com/rust-lang/rust/issues?q=is%3Aall+label%3Astable-nominated+-label%3Astable-accepted+label%3AT-compiler) +- :beta:"Make sure we handle `backwards_incompatible_lint` drops appropriately in drop elaboration" [rust#134486](https://github.com/rust-lang/rust/pull/134486) + - Authored and nominated by compiler-errors (will be reviewed by Niko) + - Fixes a P-critical unsoundness originated in #131326 (doubly freeing memory if Rust 2024 edition is enabled) + - [Comment](https://github.com/rust-lang/rust/pull/134486#issuecomment-2552548247) from @_*ehuss*: + > This approach of using MIR to implement the lint means that it does not work with `cargo fix --edition`, because cargo check does not run far enough to reach this. The only way for a user to see this is if they manually enable the lint and run a full build. I'm concerned that almost nobody will do that, making this ineffective. + - Nominated since #131326 (the patch the issue originates from) already landed on beta + +- :beta:"Bump compiler `cc` to 1.2.5" [rust#134505](https://github.com/rust-lang/rust/pull/134505) + - Authored and nominated by jieyouxu + - upgrade cc-rs from 1.2.0 to 1.2.5 ([relevant changes](https://github.com/rust-lang/rust/pull/134505#issue-2749942026) and [changelog](https://github.com/rust-lang/cc-rs/compare/cc-v1.2.0...cc-v1.2.5)) + - unblocks fixing other issues (see [comment](https://github.com/rust-lang/cc-rs/pull/1322#issuecomment-2553081378)) + +- No stable nominations for `T-compiler` this time. + +[T-types stable](https://github.com/rust-lang/rust/issues?q=is%3Aall+label%3Abeta-nominated+-label%3Abeta-accepted+label%3AT-types) / [T-types beta](https://github.com/rust-lang/rust/issues?q=is%3Aall+label%3Astable-nominated+-label%3Astable-accepted+label%3AT-types) +- No beta nominations for `T-types` this time. +- No stable nominations for `T-types` this time. + +## PRs S-waiting-on-team + +[T-compiler](https://github.com/rust-lang/rust/pulls?q=is%3Aopen+label%3AS-waiting-on-team+label%3AT-compiler) +- "Lint against `&T` to `&mut T` and `&T` to `&UnsafeCell` transmutes" [rust#128351](https://github.com/rust-lang/rust/pull/128351) + - changes were FCP'd by T-lang. Diff is `+1131 -93`, asked PR author is there's anything they can do to make it easier for us +- [Issues in progress or waiting on other teams](https://hackmd.io/XYr1BrOWSiqCrl8RCWXRaQ) + +## Issues of Note + +### Short Summary + +- [0 T-compiler P-critical issues](https://github.com/rust-lang/rust/issues?q=is%3Aopen+label%3AT-compiler+label%3AP-critical) + - [0 of those are unassigned](https://github.com/rust-lang/rust/issues?q=is%3Aopen+label%3AT-compiler+label%3AP-critical+no%3Aassignee) +- [59 T-compiler P-high issues](https://github.com/rust-lang/rust/issues?q=is%3Aopen+label%3AT-compiler+label%3AP-high) + - [36 of those are unassigned](https://github.com/rust-lang/rust/issues?q=is%3Aopen+label%3AT-compiler+label%3AP-high+no%3Aassignee) +- [0 P-critical, 1 P-high, 0 P-medium, 0 P-low regression-from-stable-to-beta](https://github.com/rust-lang/rust/labels/regression-from-stable-to-beta) +- [0 P-critical, 0 P-high, 1 P-medium, 0 P-low regression-from-stable-to-nightly](https://github.com/rust-lang/rust/labels/regression-from-stable-to-nightly) +- [0 P-critical, 34 P-high, 100 P-medium, 20 P-low regression-from-stable-to-stable](https://github.com/rust-lang/rust/labels/regression-from-stable-to-stable) + +### P-critical + +[T-compiler](https://github.com/rust-lang/rust/issues?q=is%3Aopen+label%3AP-critical+label%3AT-compiler) +- "Double Drop with #![deny(rust_2024_compatibility)]" [rust#134482](https://github.com/rust-lang/rust/issues/134482) + - Should be fixed by beta-backport nominated #134486 + +[T-types](https://github.com/rust-lang/rust/issues?q=is%3Aopen+label%3AP-critical+label%3AT-types) +- No `P-critical` issues for `T-types` this time. + +### P-high regressions + +[P-high beta regressions](https://github.com/rust-lang/rust/issues?q=is%3Aopen+label%3Aregression-from-stable-to-beta+label%3AP-high+-label%3AT-infra+-label%3AT-libs+-label%3AT-libs-api+-label%3AT-release+-label%3AT-rustdoc+-label%3AT-core) +- None + +[Unassigned P-high nightly regressions](https://github.com/rust-lang/rust/issues?q=is%3Aopen+label%3Aregression-from-stable-to-nightly+label%3AP-high+no%3Aassignee+-label%3AT-infra+-label%3AT-libs+-label%3AT-libs-api+-label%3AT-release+-label%3AT-rustdoc+-label%3AT-core+) +- No unassigned `P-high` nightly regressions this time. + +## Performance logs + +None this week + +## Nominated Issues + +[T-compiler](https://github.com/rust-lang/rust/issues?q=is%3Aopen+label%3AI-compiler-nominated) +- "Apple: Re-implement SDK discovery instead of using `xcrun`" [rust#131433](https://github.com/rust-lang/rust/pull/131433) + - @_**pnkfelix** nominated for discussion ([comment](https://github.com/rust-lang/rust/pull/131433#issuecomment-2539149459)), mentions concerns about maintenaince + - PR adds some logic to find the Apple SDK when compiling rustc (reasoning at [comment](https://github.com/rust-lang/rust/pull/131433#issuecomment-2539406670), should improve developer experience) + - Part of #129432, work on the Apple targets + +[RFC](https://github.com/rust-lang/rfcs/issues?q=is%3Aopen+label%3AI-compiler-nominated) +- No I-compiler-nominated RFCs this time. + +### Oldest PRs waiting for review + +[T-compiler](https://github.com/rust-lang/rust/pulls?q=is%3Apr+is%3Aopen+sort%3Aupdated-asc+label%3AS-waiting-on-review+draft%3Afalse+label%3AT-compiler) +- "add error message for c# style named arguments" [rust#118733](https://github.com/rust-lang/rust/pull/118733) (last review activity: 11 months ago) + - cc @**Esteban Küber** +- "Silence errors in expressions caused by bare traits in paths in 2021 edition" [rust#125784](https://github.com/rust-lang/rust/pull/125784) (last review activity: 6 months ago) + - cc: @**Esteban Küber** for a rebase then cc: @_**León Orell Liehr (fmease)** +- "[Coverage][MCDC] Do not initialize mcdc parameters for instances containing no mcdc statements" [rust#129989](https://github.com/rust-lang/rust/pull/129989) + - cc: @**Zalathar** +- "JumpThreading: fix bitwise not on non-booleans" [rust#131203](https://github.com/rust-lang/rust/pull/131203) (last review activity: about 44 days ago) + - cc @**cjgillot** +- "[macro_metavar_expr_concat] Fix #128346" [rust#131522](https://github.com/rust-lang/rust/pull/131522) (last review activity: about 45 days ago) + - cc: @**yukang** diff --git a/content/minutes/triage-meeting/T-compiler Meeting Agenda 2024-12-26.md b/content/minutes/triage-meeting/T-compiler Meeting Agenda 2024-12-26.md new file mode 100644 index 00000000..414a2796 --- /dev/null +++ b/content/minutes/triage-meeting/T-compiler Meeting Agenda 2024-12-26.md @@ -0,0 +1,378 @@ +--- +tags: weekly, rustc +type: docs +note_id: 2m_X4YoWTMKvWMHmKd3vqQ +--- + +# T-compiler Meeting Agenda 2024-12-26 + +## Backport nominations + +[T-compiler beta](https://github.com/rust-lang/rust/issues?q=is%3Aall+label%3Abeta-nominated+-label%3Abeta-accepted+label%3AT-compiler) / [T-compiler stable](https://github.com/rust-lang/rust/issues?q=is%3Aall+label%3Astable-nominated+-label%3Astable-accepted+label%3AT-compiler) +- :beta:"Do not call `extern_crate` on current trait on crate mismatch errors" [rust#133585](https://github.com/rust-lang/rust/pull/133585) + - Authored by estebank + - Fixes a recent crater run regression #133585 p-high/p-critical (and #133563, reported on nightly) + +- :beta:"Handle `DropKind::ForLint` in coroutines correctly" [rust#134575](https://github.com/rust-lang/rust/pull/134575) + - Authored by compiler-errors + - Fixes 2 recent ICEs (#134566 and #134541) + +- No stable nominations for `T-compiler` this time. + +## Performance logs + +> [triage logs for 2024-12-23](https://github.com/rust-lang/rustc-perf/blob/master/triage/2024-12-23.md) + +We missed triage last week due to some process issues, so this triage includes two weeks of data. The overall result is positive, due to parser optimizations ([#133793](https://github.com/rust-lang/rust/pull/133793)), trait solving optimizations ([#134501](https://github.com/rust-lang/rust/pull/134501), [#132325](https://github.com/rust-lang/rust/pull/132325)) and bumping the cc crate ([#134505](https://github.com/rust-lang/rust/pull/134505)), which [improved the performance](https://github.com/rust-lang/cc-rs/pull/1279) of C/C++ dependencies of the compiler. + +Triage done by **@kobzol**. +Revision range: [1b3fb316..0eca4dd3](https://perf.rust-lang.org/?start=1b3fb316751227d30b1523ed0e3f00d83956d4d0&end=0eca4dd3205a01dba4bd7b7c140ec370aff03440&absolute=false&stat=instructions%3Au) + +**Summary**: + +| (instructions:u) | mean | range | count | +|:----------------:|:----:|:-----:|:-----:| +https://github.com/rust-lang/rustc-perf/blob/master/triage/2024-12-23.md| Regressions (primary) | 0.5% | [0.3%, 0.8%] | 3 | +| Regressions (secondary) | 1.0% | [1.0%, 1.0%] | 1 | +| Improvements (primary) | -1.8% | [-7.5%, -0.3%] | 254 | +| Improvements (secondary) | -1.3% | [-5.4%, -0.3%] | 224 | +| All (primary) | -1.8% | [-7.5%, 0.8%] | 257 | + +4 Regressions, 10 Improvements, 12 Mixed; 9 of them in rollups +90 artifact comparisons made in total + +#### Regressions + +Rollup of 6 pull requests [#134296](https://github.com/rust-lang/rust/pull/134296) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=f5079d00e63718235f95353df38ebb0891bab5b4&end=f1ec5d64b301462323d7e1782551687cd3a351d0&stat=instructions:u) + +| (instructions:u) | mean | range | count | +|:----------------------------------:|:----:|:------------:|:-----:| +| Regressions (primary) | 0.3% | [0.2%, 0.4%] | 7 | +| Regressions (secondary) | - | - | 0 | +| Improvements (primary) | - | - | 0 | +| Improvements (secondary) | - | - | 0 | +| All (primary) | 0.3% | [0.2%, 0.4%] | 7 | + +- The regressions were caused by [#134081](https://github.com/rust-lang/rust/pull/134081). +- It was not deemed worthy to fix them, because of added maintenance burden. +- Marked as triaged. + +Remove queries from the driver interface [#134302](https://github.com/rust-lang/rust/pull/134302) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=52f4785f80c1516ebece019ae4b69763ffb9a618&end=978c659b72ed7520332a74321dc8accf48b06d94&stat=instructions:u) + +| (instructions:u) | mean | range | count | +|:----------------------------------:|:----:|:------------:|:-----:| +| Regressions (primary) | 0.3% | [0.1%, 0.6%] | 11 | +| Regressions (secondary) | 0.5% | [0.2%, 0.7%] | 18 | +| Improvements (primary) | - | - | 0 | +| Improvements (secondary) | - | - | 0 | +| All (primary) | 0.3% | [0.1%, 0.6%] | 11 | + +- A few tiny regressions in doc builds, caused by a cleanup of the compiler driver interface. +- Marked as triaged. + +Rollup of 8 pull requests [#134582](https://github.com/rust-lang/rust/pull/134582) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=bad2aa47219ae54d51d353e145d33d0a1792327d&end=5f23ef7d3f7a8c3e0ca5c4e1978829c0448a3686&stat=instructions:u) + +| (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 | + +- Tiny regression on a single benchmark, I don't think that it's worthy to investigate further. +- Marked as triaged. + +Asserts the maximum value that can be returned from `Vec::len` [#131193](https://github.com/rust-lang/rust/pull/131193) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=b22856d192567a55a1d2788fbc3084e3f9cb220f&end=303e8bd768526a5812bb1776e798e829ddb7d3ca&stat=instructions:u) + +| (instructions:u) | mean | range | count | +|:----------------------------------:|:----:|:------------:|:-----:| +| Regressions (primary) | 0.3% | [0.2%, 1.2%] | 104 | +| Regressions (secondary) | 0.3% | [0.1%, 0.8%] | 38 | +| Improvements (primary) | - | - | 0 | +| Improvements (secondary) | - | - | 0 | +| All (primary) | 0.3% | [0.2%, 1.2%] | 104 | + +- The post-merge regression seems to be much larger than originally expected. +- Asked the PR author about this. +- Not marking as triaged yet. + +#### Improvements + +Rollup of 9 pull requests [#134137](https://github.com/rust-lang/rust/pull/134137) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=33c245b9e98bc91e18ea1c5033824f4c6f92766f&end=5a6036a1802262f8cf02192b02026688d396f1d7&stat=instructions:u) + +| (instructions:u) | mean | range | count | +|:----------------------------------:|:-----:|:--------------:|:-----:| +| Regressions (primary) | - | - | 0 | +| Regressions (secondary) | - | - | 0 | +| Improvements (primary) | -0.9% | [-0.9%, -0.9%] | 1 | +| Improvements (secondary) | - | - | 0 | +| All (primary) | -0.9% | [-0.9%, -0.9%] | 1 | + + +Rollup of 4 pull requests [#134349](https://github.com/rust-lang/rust/pull/134349) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=d18506299bfb20488aba466a69641a2bab6f7a4a&end=c26db435bf8aee2efc397aab50f3a21eb351d6e5&stat=instructions:u) + +| (instructions:u) | mean | range | count | +|:----------------------------------:|:-----:|:--------------:|:-----:| +| Regressions (primary) | - | - | 0 | +| Regressions (secondary) | - | - | 0 | +| Improvements (primary) | -0.3% | [-0.8%, -0.1%] | 4 | +| Improvements (secondary) | -0.2% | [-0.2%, -0.2%] | 4 | +| All (primary) | -0.3% | [-0.8%, -0.1%] | 4 | + + +Rollup of 9 pull requests [#134395](https://github.com/rust-lang/rust/pull/134395) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=83ab648e00ecbdef415baba3cfbac6f5df263b1c&end=6d9f6ae36ae1299d6126ba40c15191f7aa3b79d8&stat=instructions:u) + +| (instructions:u) | mean | range | count | +|:----------------------------------:|:-----:|:--------------:|:-----:| +| Regressions (primary) | - | - | 0 | +| Regressions (secondary) | - | - | 0 | +| Improvements (primary) | - | - | 0 | +| Improvements (secondary) | -0.3% | [-0.7%, -0.2%] | 9 | +| All (primary) | - | - | 0 | + + +rework winnowing to sensibly handle global where-bounds [#132325](https://github.com/rust-lang/rust/pull/132325) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=978c659b72ed7520332a74321dc8accf48b06d94&end=604d6691d9ee5c88a05569dd3f707b20afd76e97&stat=instructions:u) + +| (instructions:u) | mean | range | count | +|:----------------------------------:|:-----:|:--------------:|:-----:| +| Regressions (primary) | - | - | 0 | +| Regressions (secondary) | - | - | 0 | +| Improvements (primary) | -0.4% | [-1.0%, -0.2%] | 64 | +| Improvements (secondary) | -1.6% | [-2.1%, -0.7%] | 9 | +| All (primary) | -0.4% | [-1.0%, -0.2%] | 64 | + + +Try to fix perf regression in rustdoc after hir attributes [#134376](https://github.com/rust-lang/rust/pull/134376) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=a4cb3c831823d9baa56c3d90514b75b2660116fa&end=7e6bf003f396aeea510577b4e925d1d95c12ff53&stat=instructions:u) + +| (instructions:u) | mean | range | count | +|:----------------------------------:|:-----:|:--------------:|:-----:| +| Regressions (primary) | - | - | 0 | +| Regressions (secondary) | - | - | 0 | +| Improvements (primary) | -0.3% | [-0.6%, -0.2%] | 10 | +| Improvements (secondary) | -0.4% | [-0.6%, -0.2%] | 18 | +| All (primary) | -0.3% | [-0.6%, -0.2%] | 10 | + + +Speed up `Parser::expected_tokens` [#133793](https://github.com/rust-lang/rust/pull/133793) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=11663cd3bfefef7d34e8f0892c250bf698049392&end=9e136a30a965bf4e63f03095c57df7257bf96fd6&stat=instructions:u) + +| (instructions:u) | mean | range | count | +|:----------------------------------:|:-----:|:--------------:|:-----:| +| Regressions (primary) | - | - | 0 | +| Regressions (secondary) | - | - | 0 | +| Improvements (primary) | -0.9% | [-2.5%, -0.2%] | 213 | +| Improvements (secondary) | -0.8% | [-2.5%, -0.1%] | 105 | +| All (primary) | -0.9% | [-2.5%, -0.2%] | 213 | + + +Rollup of 5 pull requests [#134559](https://github.com/rust-lang/rust/pull/134559) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=8a1f8039a7ded79d3d4fe97b110016d89f2b11e2&end=fcc1615e47100b376d0a6166faccdd4a8253c314&stat=instructions:u) + +| (instructions:u) | mean | range | count | +|:----------------------------------:|:-----:|:--------------:|:-----:| +| Regressions (primary) | - | - | 0 | +| Regressions (secondary) | - | - | 0 | +| Improvements (primary) | -0.5% | [-1.4%, -0.1%] | 17 | +| Improvements (secondary) | -3.1% | [-4.7%, -1.5%] | 3 | +| All (primary) | -0.5% | [-1.4%, -0.1%] | 17 | + + +handle member constraints directly in the mir type checker [#134501](https://github.com/rust-lang/rust/pull/134501) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=54dcff104b0acf01716a94429717d364fe43f90d&end=9bd5f3387dd1e24e3493fd53c2f80e5991a155b6&stat=instructions:u) + +| (instructions:u) | mean | range | count | +|:----------------------------------:|:-----:|:--------------:|:-----:| +| Regressions (primary) | - | - | 0 | +| Regressions (secondary) | - | - | 0 | +| Improvements (primary) | -0.4% | [-0.5%, -0.2%] | 65 | +| Improvements (secondary) | -0.3% | [-0.6%, -0.0%] | 58 | +| All (primary) | -0.4% | [-0.5%, -0.2%] | 65 | + + +Bump compiler `cc` to 1.2.5 [#134505](https://github.com/rust-lang/rust/pull/134505) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=387b245664a81f58260a6b565aa0b2fdf19752fb&end=4c40c89c26e9a6c761e2c6d44662028e33e9cb04&stat=instructions:u) + +| (instructions:u) | mean | range | count | +|:----------------------------------:|:-----:|:--------------:|:-----:| +| Regressions (primary) | - | - | 0 | +| Regressions (secondary) | - | - | 0 | +| Improvements (primary) | -0.7% | [-7.6%, -0.1%] | 244 | +| Improvements (secondary) | -0.7% | [-1.4%, -0.1%] | 196 | +| All (primary) | -0.7% | [-7.6%, -0.1%] | 244 | + +- The improvements were probably caused by https://github.com/rust-lang/cc-rs/pull/1279. + +cleanup `TypeVerifier` [#134465](https://github.com/rust-lang/rust/pull/134465) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=908af5ba4ad921fec81d95c97411c867cdcb33fa&end=0eca4dd3205a01dba4bd7b7c140ec370aff03440&stat=instructions:u) + +| (instructions:u) | mean | range | count | +|:----------------------------------:|:-----:|:--------------:|:-----:| +| Regressions (primary) | - | - | 0 | +| Regressions (secondary) | - | - | 0 | +| Improvements (primary) | -0.3% | [-0.4%, -0.2%] | 6 | +| Improvements (secondary) | -0.4% | [-0.5%, -0.1%] | 16 | +| All (primary) | -0.3% | [-0.4%, -0.2%] | 6 | + + +#### Mixed + +Introduce `MixedBitSet` [#133891](https://github.com/rust-lang/rust/pull/133891) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=1b3fb316751227d30b1523ed0e3f00d83956d4d0&end=f6cb952dc115fd1311b02b694933e31d8dc8b002&stat=instructions:u) + +| (instructions:u) | mean | range | count | +|:----------------------------------:|:-----:|:--------------:|:-----:| +| Regressions (primary) | - | - | 0 | +| Regressions (secondary) | 0.6% | [0.2%, 1.0%] | 8 | +| Improvements (primary) | -0.6% | [-1.3%, -0.2%] | 67 | +| Improvements (secondary) | -0.7% | [-2.0%, -0.2%] | 28 | +| All (primary) | -0.6% | [-1.3%, -0.2%] | 67 | + +- More improvements than regressions, especially on primary benchmarks. +- Already marked as triaged. + +Rollup of 10 pull requests [#134108](https://github.com/rust-lang/rust/pull/134108) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=b597d2a099a1b5b79acef05175a9ac847047f8a1&end=499605271718bceaa629f0b954502c0040e4456b&stat=instructions:u) + +| (instructions:u) | mean | range | count | +|:----------------------------------:|:-----:|:--------------:|:-----:| +| Regressions (primary) | 0.3% | [0.2%, 0.8%] | 9 | +| Regressions (secondary) | 0.3% | [0.2%, 0.3%] | 7 | +| Improvements (primary) | - | - | 0 | +| Improvements (secondary) | -0.4% | [-0.7%, -0.2%] | 6 | +| All (primary) | 0.3% | [0.2%, 0.8%] | 9 | + +- Perf. runs for the most suspect PRs in the rollup haven't shown anything, but the regression is tiny, +so it does not seem to be worthy of further investigation. +- Marked as triaged. + +We don't need `NonNull::as_ptr` debuginfo [#133899](https://github.com/rust-lang/rust/pull/133899) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=3da8bfb87f2bdcff56ed845383aa1c4fcd2c8705&end=dd436ae2a628c523c967a7876873a96c44b1e382&stat=instructions:u) + +| (instructions:u) | mean | range | count | +|:----------------------------------:|:-----:|:--------------:|:-----:| +| Regressions (primary) | 0.6% | [0.2%, 0.9%] | 2 | +| Regressions (secondary) | 0.5% | [0.2%, 1.1%] | 4 | +| Improvements (primary) | -0.9% | [-2.1%, -0.3%] | 34 | +| Improvements (secondary) | -2.7% | [-3.0%, -2.5%] | 2 | +| All (primary) | -0.9% | [-2.1%, 0.9%] | 36 | + +- More improvements than regressions, and in particular very nice binary size wins. +- Marked as triaged. + +Switch inline(always) in core/src/fmt/rt.rs to plain inline [#134047](https://github.com/rust-lang/rust/pull/134047) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=dd436ae2a628c523c967a7876873a96c44b1e382&end=4847d6a9d07d4be9ba3196f6ad444af2d7bdde72&stat=instructions:u) + +| (instructions:u) | mean | range | count | +|:----------------------------------:|:-----:|:--------------:|:-----:| +| Regressions (primary) | - | - | 0 | +| Regressions (secondary) | 0.5% | [0.5%, 0.5%] | 1 | +| Improvements (primary) | -0.4% | [-0.5%, -0.3%] | 6 | +| Improvements (secondary) | - | - | 0 | +| All (primary) | -0.4% | [-0.5%, -0.3%] | 6 | + +- More improvements than regressions. +- Marked as triaged. + +Move impl constness into impl trait header [#134122](https://github.com/rust-lang/rust/pull/134122) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=4847d6a9d07d4be9ba3196f6ad444af2d7bdde72&end=e217f949179d7337d0cae303881449360937211f&stat=instructions:u) + +| (instructions:u) | mean | range | count | +|:----------------------------------:|:-----:|:--------------:|:-----:| +| Regressions (primary) | 0.8% | [0.8%, 0.8%] | 1 | +| Regressions (secondary) | 1.7% | [1.6%, 1.9%] | 6 | +| Improvements (primary) | -0.3% | [-1.1%, -0.1%] | 59 | +| Improvements (secondary) | -0.7% | [-2.5%, -0.2%] | 41 | +| All (primary) | -0.3% | [-1.1%, 0.8%] | 60 | + +- More improvements than regressions. +- Marked as triaged. + +Bounds-check with PtrMetadata instead of Len in MIR [#133734](https://github.com/rust-lang/rust/pull/133734) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=0aeaa5eb22180fdf12a8489e63c4daa18da6f236&end=b57d93d8b9525fa261404b4cd9c0670eeb1264b8&stat=instructions:u) + +| (instructions:u) | mean | range | count | +|:----------------------------------:|:-----:|:--------------:|:-----:| +| Regressions (primary) | - | - | 0 | +| Regressions (secondary) | 0.3% | [0.2%, 0.3%] | 2 | +| Improvements (primary) | -1.4% | [-1.4%, -1.4%] | 1 | +| Improvements (secondary) | -0.6% | [-0.8%, -0.4%] | 6 | +| All (primary) | -1.4% | [-1.4%, -1.4%] | 1 | + +- Single tiny regression, otherwise tiny improvements. +- Marked as triaged. + +Remove support for specializing ToString outside the standard library [#134258](https://github.com/rust-lang/rust/pull/134258) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=7caf35b2e5401d7740fdc567fdc388059208150b&end=4790a435cbcb55c94ccdef51bf7a9b2e55824528&stat=instructions:u) + +| (instructions:u) | mean | range | count | +|:----------------------------------:|:-----:|:--------------:|:-----:| +| Regressions (primary) | 0.3% | [0.2%, 0.5%] | 3 | +| Regressions (secondary) | - | - | 0 | +| Improvements (primary) | -0.4% | [-0.4%, -0.4%] | 1 | +| Improvements (secondary) | - | - | 0 | +| All (primary) | 0.1% | [-0.4%, 0.5%] | 4 | + +- Tiny regression that was deemed acceptable. +- Marked as triaged. + +Modifies the index instruction from `gep [0 x %Type]` to `gep %Type` [#134117](https://github.com/rust-lang/rust/pull/134117) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=0894fb0fbf457916bb013168476d802852d9dd6a&end=a611773d80486c8511ed554400eab0681a8bb068&stat=instructions:u) + +| (instructions:u) | mean | range | count | +|:----------------------------------:|:-----:|:--------------:|:-----:| +| Regressions (primary) | 0.1% | [0.1%, 0.2%] | 2 | +| Regressions (secondary) | 0.6% | [0.2%, 1.1%] | 17 | +| Improvements (primary) | - | - | 0 | +| Improvements (secondary) | -1.3% | [-1.4%, -1.2%] | 4 | +| All (primary) | 0.1% | [0.1%, 0.2%] | 2 | + +- The post-merge perf. is very similar to the previous perf. runs, which were deemed acceptable during review. +- Marked as triaged. + +Hir attributes [#131808](https://github.com/rust-lang/rust/pull/131808) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=c26db435bf8aee2efc397aab50f3a21eb351d6e5&end=f2b91ccbc27cb06369aa2dd934ff219e156408a8&stat=instructions:u) + +| (instructions:u) | mean | range | count | +|:----------------------------------:|:-----:|:--------------:|:-----:| +| Regressions (primary) | 0.4% | [0.2%, 1.1%] | 9 | +| Regressions (secondary) | 0.4% | [0.1%, 0.6%] | 20 | +| Improvements (primary) | -0.2% | [-0.4%, -0.2%] | 3 | +| Improvements (secondary) | -0.3% | [-0.7%, -0.2%] | 5 | +| All (primary) | 0.3% | [-0.4%, 1.1%] | 12 | + +- The regression was fixed in [#134376](https://github.com/rust-lang/rust/pull/134376). +- Marked as triaged. + +Rollup of 11 pull requests [#134470](https://github.com/rust-lang/rust/pull/134470) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=057bdb37eccff6a2bd402509bbbadb9d73ad7bf5&end=a52085d9f6a6e596b0cbad4502cddf86bc878028&stat=instructions:u) + +| (instructions:u) | mean | range | count | +|:----------------------------------:|:-----:|:--------------:|:-----:| +| Regressions (primary) | - | - | 0 | +| Regressions (secondary) | 0.2% | [0.1%, 0.4%] | 7 | +| Improvements (primary) | -0.2% | [-0.3%, -0.1%] | 3 | +| Improvements (secondary) | -0.5% | [-0.5%, -0.3%] | 5 | +| All (primary) | -0.2% | [-0.3%, -0.1%] | 3 | + +- Regressions seem to be balanced with improvements. +- Marked as triaged. + +Rollup of 8 pull requests [#134492](https://github.com/rust-lang/rust/pull/134492) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=023521e6825edfa6df01e392520d7cb120eab158&end=bab18a542d95b5c76620d0a0d383d7ab683cc1b7&stat=instructions:u) + +| (instructions:u) | mean | range | count | +|:----------------------------------:|:-----:|:--------------:|:-----:| +| Regressions (primary) | 0.4% | [0.2%, 0.7%] | 10 | +| Regressions (secondary) | - | - | 0 | +| Improvements (primary) | - | - | 0 | +| Improvements (secondary) | -0.1% | [-0.1%, -0.1%] | 1 | +| All (primary) | 0.4% | [0.2%, 0.7%] | 10 | + +- The regressions seem to have blipped back soon after +- Marked as triaged. + +Delete `Rvalue::Len` 🎉 [#134330](https://github.com/rust-lang/rust/pull/134330) [(Comparison Link)](https://perf.rust-lang.org/compare.html?start=303e8bd768526a5812bb1776e798e829ddb7d3ca&end=e108481f74ff123ad98a63bd107a18d13035b275&stat=instructions:u) + +| (instructions:u) | mean | range | count | +|:----------------------------------:|:-----:|:--------------:|:-----:| +| Regressions (primary) | 0.3% | [0.3%, 0.4%] | 2 | +| Regressions (secondary) | - | - | 0 | +| Improvements (primary) | -0.3% | [-0.8%, -0.2%] | 7 | +| Improvements (secondary) | -0.3% | [-0.4%, -0.2%] | 2 | +| All (primary) | -0.2% | [-0.8%, 0.4%] | 9 | + +- More improvements than regressions. +- Marked as triaged.