diff options
| author | bors <bors@rust-lang.org> | 2020-03-15 20:40:16 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2020-03-15 20:40:16 +0000 |
| commit | 45ebd5808afd3df7ba842797c0fcd4447ddf30fb (patch) | |
| tree | 7815a11dc0843280c41cb143525cc0f2829cf9ee /src/librustc_interface | |
| parent | e0f5df017368dc3f7cb458fc6d5a5e0420e1d2e5 (diff) | |
| parent | 14fdd85a5aa3768e5896d9ca638488722f7e9e94 (diff) | |
Auto merge of #68944 - Zoxc:hir-map, r=eddyb
Use queries for the HIR map r? @eddyb cc @michaelwoerister
Diffstat (limited to 'src/librustc_interface')
| -rw-r--r-- | src/librustc_interface/passes.rs | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/src/librustc_interface/passes.rs b/src/librustc_interface/passes.rs index bffbcd33669..4fe7a06e560 100644 --- a/src/librustc_interface/passes.rs +++ b/src/librustc_interface/passes.rs @@ -5,7 +5,7 @@ use crate::util; use log::{info, log_enabled, warn}; use rustc::arena::Arena; use rustc::dep_graph::DepGraph; -use rustc::hir::map; +use rustc::hir::map::Definitions; use rustc::lint; use rustc::middle; use rustc::middle::cstore::{CrateStore, MetadataLoader, MetadataLoaderDyn}; @@ -713,10 +713,7 @@ pub fn create_global_ctxt<'tcx>( arena: &'tcx WorkerLocal<Arena<'tcx>>, ) -> QueryContext<'tcx> { let sess = &compiler.session(); - let defs = mem::take(&mut resolver_outputs.definitions); - - // Construct the HIR map. - let hir_map = map::map_crate(sess, &*resolver_outputs.cstore, krate, dep_graph, defs); + let defs: &'tcx Definitions = arena.alloc(mem::take(&mut resolver_outputs.definitions)); let query_result_on_disk_cache = rustc_incremental::load_query_result_cache(sess); @@ -742,7 +739,9 @@ pub fn create_global_ctxt<'tcx>( extern_providers, arena, resolver_outputs, - hir_map, + krate, + defs, + dep_graph, query_result_on_disk_cache, &crate_name, &outputs, @@ -763,6 +762,8 @@ pub fn create_global_ctxt<'tcx>( fn analysis(tcx: TyCtxt<'_>, cnum: CrateNum) -> Result<()> { assert_eq!(cnum, LOCAL_CRATE); + rustc::hir::map::check_crate(tcx); + let sess = tcx.sess; let mut entry_point = None; |
