Remove DepKind::CrateMetadata and pre-allocation of DepNodes
Remove much of the special-case handling around crate metadata dependency tracking by replacing `DepKind::CrateMetadata` and the pre-allocation of corresponding `DepNodes` with on-demand invocation of the `crate_hash` query.
This commit is contained in:
parent
497c9a256b
commit
62139ffad4
9 changed files with 24 additions and 107 deletions
|
@ -4,7 +4,6 @@ use rustc_data_structures::fx::FxHashMap;
|
|||
use rustc_hir::definitions::Definitions;
|
||||
use rustc_middle::dep_graph::{PreviousDepGraph, SerializedDepGraph, WorkProduct, WorkProductId};
|
||||
use rustc_middle::ty::query::OnDiskCache;
|
||||
use rustc_middle::ty::TyCtxt;
|
||||
use rustc_serialize::opaque::Decoder;
|
||||
use rustc_serialize::Decodable as RustcDecodable;
|
||||
use rustc_session::Session;
|
||||
|
@ -15,14 +14,6 @@ use super::file_format;
|
|||
use super::fs::*;
|
||||
use super::work_product;
|
||||
|
||||
pub fn dep_graph_tcx_init(tcx: TyCtxt<'_>) {
|
||||
if !tcx.dep_graph.is_fully_enabled() {
|
||||
return;
|
||||
}
|
||||
|
||||
tcx.allocate_metadata_dep_nodes();
|
||||
}
|
||||
|
||||
type WorkProductMap = FxHashMap<WorkProductId, WorkProduct>;
|
||||
|
||||
pub enum LoadResult<T> {
|
||||
|
|
|
@ -15,7 +15,6 @@ pub use fs::garbage_collect_session_directories;
|
|||
pub use fs::in_incr_comp_dir;
|
||||
pub use fs::in_incr_comp_dir_sess;
|
||||
pub use fs::prepare_session_directory;
|
||||
pub use load::dep_graph_tcx_init;
|
||||
pub use load::load_query_result_cache;
|
||||
pub use load::LoadResult;
|
||||
pub use load::{load_dep_graph, DepGraphFuture};
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue