rust/tests
bors ec28ae9454 Auto merge of #141667 - lqd:lazy-maybe-init, r=matthewjasper
Add fast path for maybe-initializedness in liveness

r? `@matthewjasper`

Correct me if I'm wrong Matthew, but my understanding is that
1. `MaybeInitializedPlaces` is currently eagerly computed, in `do_mir_borrowck`
2. but this data is only used in liveness
3. and `liveness::trace` actually only uses it for drop-liveness

This PR moves the computation to `liveness::trace` which looks to be its only use-site. We also add a fast path there, so that it's only computed by drop-liveness.

This is interesting because 1) liveness is only computed for relevant live locals, 2) drop-liveness is only computed for relevant live locals with >0 drop points; 0 is the common case from our benchmarks, as far as I can tell, so even just computing the entire data lazily helps.

It seems possible to also reduce the domain here, and speed up the analysis for the cases where it has to be computed -- so I've left a fixme for that, and may look into it soon.

(I've come upon this while doing implementation work for polonius, so don't be too enamored with possible wins: the goal is to reduce the eventual polonius overhead and make it more palatable 😓)
2025-05-31 04:52:37 +00:00
..
assembly Add compiler tests for xray 2025-05-26 00:39:23 +08:00
auxiliary stabilize naked_functions 2025-04-20 11:18:38 +02:00
codegen Auto merge of #139385 - joboet:threadlocal_address, r=nikic 2025-05-30 15:39:56 +00:00
codegen-units Remove mono item collection strategy override from -Zprint-mono-items 2025-05-09 12:19:09 +02:00
coverage coverage: Revert "unused local file IDs" due to empty function names 2025-05-27 23:33:29 +10:00
coverage-run-rustdoc Update coverage-run-rustdoc output 2025-03-28 10:35:53 +01:00
crashes Rollup merge of #141004 - matthewjasper:unicode-before-expansion, r=davidtwco 2025-05-30 07:01:28 +02:00
debuginfo Rollup merge of #138285 - beetrees:repr128-stable, r=traviscross,bjorn3 2025-05-29 04:50:46 +02:00
incremental Remove manual WF hack 2025-05-07 16:29:59 +00:00
mir-opt Auto merge of #141667 - lqd:lazy-maybe-init, r=matthewjasper 2025-05-31 04:52:37 +00:00
pretty Update generic tests 2025-05-21 07:24:43 +00:00
run-make Rollup merge of #141538 - folkertdev:systemv-x86_64-va_arg, r=workingjubilee 2025-05-30 07:01:30 +02:00
rustdoc Rollup merge of #141747 - lolbinarycat:rustdoc-cfg-138112, r=GuillaumeGomez 2025-05-30 07:01:31 +02:00
rustdoc-gui Rollup merge of #139831 - lolbinarycat:rustdoc-mobile-sidebar, r=GuillaumeGomez 2025-05-25 04:00:55 +02:00
rustdoc-js yeet CanonicalVarInfo 2025-05-23 12:10:53 +00:00
rustdoc-js-std Consistent trait bounds for ExtractIf Debug impls 2025-05-05 19:46:46 -07:00
rustdoc-json Stabilise repr128 2025-05-28 15:14:34 +01:00
rustdoc-ui Rework #[doc(cfg(..))] checks as distinct pass in rustdoc 2025-05-29 21:50:14 +02:00
ui Rollup merge of #141781 - matthewjasper:unused-unsafe-lifetimes, r=compiler-errors 2025-05-30 13:52:28 -07:00
ui-fulldeps remove visit_clobber and move DummyAstNode to rustc_expand 2025-05-29 12:46:26 +08:00
COMPILER_TESTS.md