Skip to content

Commit 4107a3c

Browse files
committed
move facts module to polonius legacy module
this is specific to the old datalog implementation and wasn't noticed in the previous module move
1 parent fbf48c1 commit 4107a3c

File tree

10 files changed

+17
-22
lines changed

10 files changed

+17
-22
lines changed

compiler/rustc_borrowck/src/consumers.rs

+4-3
Original file line numberDiff line numberDiff line change
@@ -8,11 +8,12 @@ use rustc_middle::ty::TyCtxt;
88
pub use super::borrow_set::{BorrowData, BorrowSet, TwoPhaseActivation};
99
pub use super::constraints::OutlivesConstraint;
1010
pub use super::dataflow::{BorrowIndex, Borrows, calculate_borrows_out_of_scope_at_location};
11-
pub use super::facts::{AllFacts as PoloniusInput, PoloniusRegionVid, RustcFacts};
12-
pub use super::nll::PoloniusOutput;
1311
pub use super::place_ext::PlaceExt;
1412
pub use super::places_conflict::{PlaceConflictBias, places_conflict};
15-
pub use super::polonius::legacy::{LocationTable, RichLocation};
13+
pub use super::polonius::legacy::{
14+
AllFacts as PoloniusInput, LocationTable, PoloniusOutput, PoloniusRegionVid, RichLocation,
15+
RustcFacts,
16+
};
1617
pub use super::region_infer::RegionInferenceContext;
1718

1819
/// Options determining the output behavior of [`get_body_with_borrowck_facts`].

compiler/rustc_borrowck/src/lib.rs

+1-3
Original file line numberDiff line numberDiff line change
@@ -53,11 +53,10 @@ use crate::borrow_set::{BorrowData, BorrowSet};
5353
use crate::consumers::{BodyWithBorrowckFacts, ConsumerOptions};
5454
use crate::dataflow::{BorrowIndex, Borrowck, BorrowckDomain, Borrows};
5555
use crate::diagnostics::{AccessKind, IllegalMoveOriginKind, MoveError, RegionName};
56-
use crate::nll::PoloniusOutput;
5756
use crate::path_utils::*;
5857
use crate::place_ext::PlaceExt;
5958
use crate::places_conflict::{PlaceConflictBias, places_conflict};
60-
use crate::polonius::legacy::LocationTable;
59+
use crate::polonius::legacy::{LocationTable, PoloniusOutput};
6160
use crate::prefixes::PrefixSet;
6261
use crate::region_infer::RegionInferenceContext;
6362
use crate::renumber::RegionCtxt;
@@ -69,7 +68,6 @@ mod constraints;
6968
mod dataflow;
7069
mod def_use;
7170
mod diagnostics;
72-
mod facts;
7371
mod member_constraints;
7472
mod nll;
7573
mod path_utils;

compiler/rustc_borrowck/src/nll.rs

+1-4
Original file line numberDiff line numberDiff line change
@@ -27,16 +27,13 @@ use tracing::{debug, instrument};
2727
use crate::borrow_set::BorrowSet;
2828
use crate::consumers::ConsumerOptions;
2929
use crate::diagnostics::RegionErrors;
30-
use crate::facts::{AllFacts, AllFactsExt, RustcFacts};
3130
use crate::polonius::LocalizedOutlivesConstraintSet;
32-
use crate::polonius::legacy::LocationTable;
31+
use crate::polonius::legacy::{AllFacts, AllFactsExt, LocationTable, PoloniusOutput};
3332
use crate::region_infer::RegionInferenceContext;
3433
use crate::type_check::{self, MirTypeckResults};
3534
use crate::universal_regions::UniversalRegions;
3635
use crate::{BorrowckInferCtxt, polonius, renumber};
3736

38-
pub type PoloniusOutput = Output<RustcFacts>;
39-
4037
/// The output of `nll::compute_regions`. This includes the computed `RegionInferenceContext`, any
4138
/// closure requirements to propagate, and any generated errors.
4239
pub(crate) struct NllOutput<'tcx> {

compiler/rustc_borrowck/src/polonius/legacy/accesses.rs

+1-2
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,8 @@ use rustc_middle::ty::TyCtxt;
44
use rustc_mir_dataflow::move_paths::{LookupResult, MoveData};
55
use tracing::debug;
66

7-
use super::{LocationIndex, LocationTable};
7+
use super::{AllFacts, LocationIndex, LocationTable};
88
use crate::def_use::{self, DefUse};
9-
use crate::facts::AllFacts;
109
use crate::universal_regions::UniversalRegions;
1110

1211
/// Emit polonius facts for variable defs, uses, drops, and path accesses.

compiler/rustc_borrowck/src/facts.rs renamed to compiler/rustc_borrowck/src/polonius/legacy/facts.rs

+4-2
Original file line numberDiff line numberDiff line change
@@ -4,18 +4,20 @@ use std::fs::{self, File};
44
use std::io::Write;
55
use std::path::Path;
66

7-
use polonius_engine::{AllFacts as PoloniusFacts, Atom};
7+
use polonius_engine::{AllFacts as PoloniusFacts, Atom, Output};
88
use rustc_macros::extension;
99
use rustc_middle::mir::Local;
1010
use rustc_middle::ty::{RegionVid, TyCtxt};
1111
use rustc_mir_dataflow::move_paths::MovePathIndex;
1212

13+
use super::{LocationIndex, LocationTable};
1314
use crate::BorrowIndex;
14-
use crate::polonius::legacy::{LocationIndex, LocationTable};
1515

1616
#[derive(Copy, Clone, Debug)]
1717
pub struct RustcFacts;
1818

19+
pub type PoloniusOutput = Output<RustcFacts>;
20+
1921
rustc_index::newtype_index! {
2022
/// A (kinda) newtype of `RegionVid` so we can implement `Atom` on it.
2123
#[orderable]

compiler/rustc_borrowck/src/polonius/legacy/loan_invalidations.rs

+1-2
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,8 @@ use rustc_middle::mir::{
99
use rustc_middle::ty::TyCtxt;
1010
use tracing::debug;
1111

12-
use super::LocationTable;
12+
use super::{AllFacts, LocationTable};
1313
use crate::borrow_set::BorrowSet;
14-
use crate::facts::AllFacts;
1514
use crate::path_utils::*;
1615
use crate::{
1716
AccessDepth, Activation, ArtificialField, BorrowIndex, Deep, LocalMutationIsAllowed, Read,

compiler/rustc_borrowck/src/polonius/legacy/loan_kills.rs

+1-2
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,8 @@ use rustc_middle::mir::{
66
use rustc_middle::ty::TyCtxt;
77
use tracing::debug;
88

9-
use super::LocationTable;
9+
use super::{AllFacts, LocationTable};
1010
use crate::borrow_set::BorrowSet;
11-
use crate::facts::AllFacts;
1211
use crate::places_conflict;
1312

1413
/// Emit `loan_killed_at` and `cfg_edge` facts at the same time.

compiler/rustc_borrowck/src/polonius/legacy/mod.rs

+2-1
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@ use tracing::debug;
1313

1414
use crate::borrow_set::BorrowSet;
1515
use crate::constraints::OutlivesConstraint;
16-
use crate::facts::{AllFacts, PoloniusRegionVid};
1716
use crate::type_check::MirTypeckRegionConstraints;
1817
use crate::type_check::free_region_relations::UniversalRegionRelations;
1918
use crate::universal_regions::UniversalRegions;
@@ -23,6 +22,8 @@ mod loan_invalidations;
2322
mod loan_kills;
2423
mod location;
2524
pub use self::location::*;
25+
mod facts;
26+
pub use self::facts::*;
2627

2728
/// When requested, emit most of the facts needed by polonius:
2829
/// - moves and assignments

compiler/rustc_borrowck/src/region_infer/mod.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ use crate::constraints::{ConstraintSccIndex, OutlivesConstraint, OutlivesConstra
3030
use crate::dataflow::BorrowIndex;
3131
use crate::diagnostics::{RegionErrorKind, RegionErrors, UniverseInfo};
3232
use crate::member_constraints::{MemberConstraintSet, NllMemberConstraintIndex};
33-
use crate::nll::PoloniusOutput;
33+
use crate::polonius::legacy::PoloniusOutput;
3434
use crate::region_infer::reverse_sccs::ReverseSccGraph;
3535
use crate::region_infer::values::{LivenessValues, RegionElement, RegionValues, ToElementIndex};
3636
use crate::type_check::free_region_relations::UniversalRegionRelations;

compiler/rustc_borrowck/src/type_check/mod.rs

+1-2
Original file line numberDiff line numberDiff line change
@@ -47,10 +47,9 @@ use tracing::{debug, instrument, trace};
4747
use crate::borrow_set::BorrowSet;
4848
use crate::constraints::{OutlivesConstraint, OutlivesConstraintSet};
4949
use crate::diagnostics::UniverseInfo;
50-
use crate::facts::AllFacts;
5150
use crate::member_constraints::MemberConstraintSet;
5251
use crate::polonius::PoloniusContext;
53-
use crate::polonius::legacy::LocationTable;
52+
use crate::polonius::legacy::{AllFacts, LocationTable};
5453
use crate::region_infer::TypeTest;
5554
use crate::region_infer::values::{LivenessValues, PlaceholderIndex, PlaceholderIndices};
5655
use crate::renumber::RegionCtxt;

0 commit comments

Comments
 (0)