diff options
| author | Camille GILLOT <gillot.camille@gmail.com> | 2019-11-27 13:32:28 +0100 |
|---|---|---|
| committer | Camille GILLOT <gillot.camille@gmail.com> | 2019-11-27 13:32:28 +0100 |
| commit | 1e12f39d83eeddd523e384e20ab4f1fa56eb8888 (patch) | |
| tree | 73876230e92686da103ed24ebddc2fe3ea00d16f | |
| parent | e321ba989c9f03748d5c19aead84edfcc9e9e69a (diff) | |
Allocate HIR Forest on arena.
| -rw-r--r-- | src/librustc/arena.rs | 1 | ||||
| -rw-r--r-- | src/librustc_interface/queries.rs | 4 |
2 files changed, 2 insertions, 3 deletions
diff --git a/src/librustc/arena.rs b/src/librustc/arena.rs index 9b13a910c61..193b04eabb3 100644 --- a/src/librustc/arena.rs +++ b/src/librustc/arena.rs @@ -93,6 +93,7 @@ macro_rules! arena_types { rustc::hir::def_id::CrateNum > >, + [few] hir_forest: rustc::hir::map::Forest, [few] diagnostic_items: rustc_data_structures::fx::FxHashMap< syntax::symbol::Symbol, rustc::hir::def_id::DefId, diff --git a/src/librustc_interface/queries.rs b/src/librustc_interface/queries.rs index 53ab5eb990d..6103d42c5db 100644 --- a/src/librustc_interface/queries.rs +++ b/src/librustc_interface/queries.rs @@ -72,7 +72,6 @@ impl<T> Default for Query<T> { pub struct Queries<'tcx> { compiler: &'tcx Compiler, gcx: Once<GlobalCtxt<'tcx>>, - forest: Once<hir::map::Forest>, all_arenas: AllArenas, arena: WorkerLocal<Arena<'tcx>>, @@ -94,7 +93,6 @@ impl<'tcx> Queries<'tcx> { Queries { compiler, gcx: Once::new(), - forest: Once::new(), all_arenas: AllArenas::new(), arena: WorkerLocal::new(|_| Arena::default()), dep_graph_future: Default::default(), @@ -236,7 +234,7 @@ impl<'tcx> Queries<'tcx> { &krate ) })?; - let hir = self.forest.init_locking(|| hir); + let hir = self.arena.alloc(hir); Ok((hir, Steal::new(BoxedResolver::to_resolver_outputs(resolver)))) }) } |
