@@ -21,7 +21,7 @@ use rustc_builtin_macros;
21
21
use rustc_codegen_ssa:: back:: link:: emit_metadata;
22
22
use rustc_codegen_utils:: codegen_backend:: CodegenBackend ;
23
23
use rustc_codegen_utils:: link:: filename_for_metadata;
24
- use rustc_data_structures:: sync:: { par_for_each, Lrc , Once , WorkerLocal } ;
24
+ use rustc_data_structures:: sync:: { join , par_for_each, Lrc , Once , WorkerLocal } ;
25
25
use rustc_data_structures:: { box_region_allow_access, declare_box_region_type, parallel} ;
26
26
use rustc_errors:: PResult ;
27
27
use rustc_expand:: base:: ExtCtxt ;
@@ -721,10 +721,13 @@ pub fn create_global_ctxt<'tcx>(
721
721
let sess = & compiler. session ( ) ;
722
722
let defs = mem:: take ( & mut resolver_outputs. definitions ) ;
723
723
724
- // Construct the HIR map.
725
- let hir_map = map:: map_crate ( sess, & * resolver_outputs. cstore , & hir_forest, defs) ;
726
-
727
- let query_result_on_disk_cache = rustc_incremental:: load_query_result_cache ( sess) ;
724
+ let ( query_result_on_disk_cache, hir_map) = join (
725
+ || rustc_incremental:: load_query_result_cache ( sess) ,
726
+ || {
727
+ // Construct the HIR map.
728
+ map:: map_crate ( sess, & * resolver_outputs. cstore , & hir_forest, defs)
729
+ } ,
730
+ ) ;
728
731
729
732
let codegen_backend = compiler. codegen_backend ( ) ;
730
733
let mut local_providers = ty:: query:: Providers :: default ( ) ;
0 commit comments