mirror of
https://github.com/rust-lang/rust.git
synced 2025-05-01 20:47:36 +00:00
![]() Optimize dataflow-const-prop place-tracking infra Optimization opportunities found while investigating https://github.com/rust-lang/rust/pull/110719 Computing places breadth-first ensures that we create short projections before deep projections, since the former are more likely to be propagated. The most relevant is the pre-computation of flooded places. Callgrind showed `flood_*` methods and especially `preorder_preinvoke` were especially hot. This PR attempts to pre-compute the set of `ValueIndex` that `preorder_invoke` would visit. Using this information, we make some `PlaceIndex` inaccessible when they contain no `ValueIndex`, allowing to skip computations for those places. cc `@jachris` as original author |
||
---|---|---|
.. | ||
framework | ||
impls | ||
move_paths | ||
drop_flag_effects.rs | ||
elaborate_drops.rs | ||
errors.rs | ||
lib.rs | ||
rustc_peek.rs | ||
storage.rs | ||
un_derefer.rs | ||
value_analysis.rs |