@@ -17,10 +17,7 @@ use rustc_ast::expand::allocator::AllocatorKind;
17
17
use rustc_attr as attr;
18
18
use rustc_data_structures:: fx:: { FxHashMap , FxHashSet } ;
19
19
use rustc_data_structures:: profiling:: { get_resident_set_size, print_time_passes_entry} ;
20
-
21
- use rustc_data_structures:: sync:: par_iter;
22
- #[ cfg( parallel_compiler) ]
23
- use rustc_data_structures:: sync:: ParallelIterator ;
20
+ use rustc_data_structures:: sync:: par_map;
24
21
use rustc_hir as hir;
25
22
use rustc_hir:: def_id:: { DefId , LOCAL_CRATE } ;
26
23
use rustc_hir:: lang_items:: LangItem ;
@@ -30,8 +27,8 @@ use rustc_middle::middle::exported_symbols;
30
27
use rustc_middle:: middle:: exported_symbols:: SymbolExportKind ;
31
28
use rustc_middle:: middle:: lang_items;
32
29
use rustc_middle:: mir:: mono:: { CodegenUnit , CodegenUnitNameBuilder , MonoItem } ;
30
+ use rustc_middle:: query:: Providers ;
33
31
use rustc_middle:: ty:: layout:: { HasTyCtxt , LayoutOf , TyAndLayout } ;
34
- use rustc_middle:: ty:: query:: Providers ;
35
32
use rustc_middle:: ty:: { self , Instance , Ty , TyCtxt } ;
36
33
use rustc_session:: cgu_reuse_tracker:: CguReuse ;
37
34
use rustc_session:: config:: { self , CrateType , EntryFnType , OutputType } ;
@@ -689,7 +686,7 @@ pub fn codegen_crate<B: ExtraBackendMethods>(
689
686
// This likely is a temporary measure. Once we don't have to support the
690
687
// non-parallel compiler anymore, we can compile CGUs end-to-end in
691
688
// parallel and get rid of the complicated scheduling logic.
692
- let mut pre_compiled_cgus = if cfg ! ( parallel_compiler ) {
689
+ let mut pre_compiled_cgus = if tcx . sess . threads ( ) > 1 {
693
690
tcx. sess . time ( "compile_first_CGU_batch" , || {
694
691
// Try to find one CGU to compile per thread.
695
692
let cgus: Vec < _ > = cgu_reuse
@@ -702,12 +699,10 @@ pub fn codegen_crate<B: ExtraBackendMethods>(
702
699
// Compile the found CGUs in parallel.
703
700
let start_time = Instant :: now ( ) ;
704
701
705
- let pre_compiled_cgus = par_iter ( cgus)
706
- . map ( |( i, _) | {
707
- let module = backend. compile_codegen_unit ( tcx, codegen_units[ i] . name ( ) ) ;
708
- ( i, module)
709
- } )
710
- . collect ( ) ;
702
+ let pre_compiled_cgus = par_map ( cgus, |( i, _) | {
703
+ let module = backend. compile_codegen_unit ( tcx, codegen_units[ i] . name ( ) ) ;
704
+ ( i, module)
705
+ } ) ;
711
706
712
707
total_codegen_time += start_time. elapsed ( ) ;
713
708
0 commit comments