about summary refs log tree commit diff
path: root/compiler/rustc_mir_dataflow/src/lib.rs
diff options
context:
space:
mode:
authorGuillaume Gomez <guillaume1.gomez@gmail.com>2025-05-07 18:19:04 +0200
committerGitHub <noreply@github.com>2025-05-07 18:19:04 +0200
commit82c99c41c0dc8692bb2261f16962ccf65b38c7ad (patch)
tree72b1b6213908af945a1c5ff8c36e4d9c89f96bd0 /compiler/rustc_mir_dataflow/src/lib.rs
parent3ef8e64ce9f72ee8d600d55bc43b36eed069b252 (diff)
parent92799b6f89d2d9bbfcb9b11d1bac57899d0bc435 (diff)
downloadrust-82c99c41c0dc8692bb2261f16962ccf65b38c7ad.tar.gz
rust-82c99c41c0dc8692bb2261f16962ccf65b38c7ad.zip
Rollup merge of #140234 - nnethercote:separate-Analysis-and-Results, r=davidtwco
Separate dataflow analysis and results

`Analysis` gets put into `Results` with `EntryStates`, by `iterate_to_fixpoint`. This has two problems:
- `Results` is passed various places where only `Analysis` is needed.
- `EntryStates` is passed around mutably everywhere even though it is immutable.

This commit mostly separates `Analysis` from `Results` and fixes these two problems.

r? `@davidtwco`
Diffstat (limited to 'compiler/rustc_mir_dataflow/src/lib.rs')
-rw-r--r--compiler/rustc_mir_dataflow/src/lib.rs4
1 files changed, 2 insertions, 2 deletions
diff --git a/compiler/rustc_mir_dataflow/src/lib.rs b/compiler/rustc_mir_dataflow/src/lib.rs
index 38f82b12746..658fbf505e4 100644
--- a/compiler/rustc_mir_dataflow/src/lib.rs
+++ b/compiler/rustc_mir_dataflow/src/lib.rs
@@ -18,8 +18,8 @@ pub use self::drop_flag_effects::{
     move_path_children_matching, on_all_children_bits, on_lookup_result_bits,
 };
 pub use self::framework::{
-    Analysis, Backward, Direction, EntryStates, Forward, GenKill, JoinSemiLattice, MaybeReachable,
-    Results, ResultsCursor, ResultsVisitor, fmt, graphviz, lattice, visit_results,
+    Analysis, Backward, Direction, Forward, GenKill, JoinSemiLattice, MaybeReachable, Results,
+    ResultsCursor, ResultsVisitor, fmt, graphviz, lattice, visit_reachable_results, visit_results,
 };
 use self::move_paths::MoveData;