Skip to content
This repository was archived by the owner on May 28, 2025. It is now read-only.

Commit d156638

Browse files
committed
Inline the expansion query
1 parent 21f4c07 commit d156638

File tree

1 file changed

+23
-28
lines changed

1 file changed

+23
-28
lines changed

compiler/rustc_interface/src/queries.rs

Lines changed: 23 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ use rustc_incremental::DepGraphFuture;
1313
use rustc_lint::LintStore;
1414
use rustc_middle::arena::Arena;
1515
use rustc_middle::dep_graph::DepGraph;
16-
use rustc_middle::ty::{self, GlobalCtxt, ResolverOutputs, TyCtxt};
16+
use rustc_middle::ty::{self, GlobalCtxt, TyCtxt};
1717
use rustc_query_impl::Queries as TcxQueries;
1818
use rustc_resolve::Resolver;
1919
use rustc_session::config::{self, OutputFilenames, OutputType};
@@ -88,7 +88,6 @@ pub struct Queries<'tcx> {
8888
parse: Query<ast::Crate>,
8989
crate_name: Query<Symbol>,
9090
register_plugins: Query<(ast::Crate, Lrc<LintStore>)>,
91-
expansion: Query<(Lrc<ast::Crate>, ResolverOutputs, Lrc<LintStore>)>,
9291
dep_graph: Query<DepGraph>,
9392
// This just points to what's in `gcx_cell`.
9493
gcx: Query<&'tcx GlobalCtxt<'tcx>>,
@@ -107,7 +106,6 @@ impl<'tcx> Queries<'tcx> {
107106
parse: Default::default(),
108107
crate_name: Default::default(),
109108
register_plugins: Default::default(),
110-
expansion: Default::default(),
111109
dep_graph: Default::default(),
112110
gcx: Default::default(),
113111
ongoing_codegen: Default::default(),
@@ -169,30 +167,6 @@ impl<'tcx> Queries<'tcx> {
169167
})
170168
}
171169

172-
pub fn expansion(
173-
&self,
174-
) -> Result<QueryResult<'_, (Lrc<ast::Crate>, ResolverOutputs, Lrc<LintStore>)>> {
175-
trace!("expansion");
176-
self.expansion.compute(|| {
177-
let crate_name = *self.crate_name()?.borrow();
178-
let (krate, lint_store) = self.register_plugins()?.steal();
179-
let _timer = self.session().timer("configure_and_expand");
180-
let sess = self.session();
181-
182-
let arenas = Resolver::arenas();
183-
let mut resolver = Resolver::new(
184-
sess,
185-
&krate,
186-
crate_name,
187-
self.codegen_backend().metadata_loader(),
188-
&arenas,
189-
);
190-
let krate =
191-
passes::configure_and_expand(sess, &lint_store, krate, crate_name, &mut resolver)?;
192-
Ok((Lrc::new(krate), resolver.into_outputs(), lint_store))
193-
})
194-
}
195-
196170
fn dep_graph(&self) -> Result<QueryResult<'_, DepGraph>> {
197171
self.dep_graph.compute(|| {
198172
let sess = self.session();
@@ -212,7 +186,28 @@ impl<'tcx> Queries<'tcx> {
212186
pub fn global_ctxt(&'tcx self) -> Result<QueryResult<'_, &'tcx GlobalCtxt<'tcx>>> {
213187
self.gcx.compute(|| {
214188
let crate_name = *self.crate_name()?.borrow();
215-
let (krate, resolver_outputs, lint_store) = self.expansion()?.steal();
189+
let (krate, resolver_outputs, lint_store) = {
190+
let (krate, lint_store) = self.register_plugins()?.steal();
191+
let _timer = self.session().timer("configure_and_expand");
192+
let sess = self.session();
193+
194+
let arenas = Resolver::arenas();
195+
let mut resolver = Resolver::new(
196+
sess,
197+
&krate,
198+
crate_name,
199+
self.codegen_backend().metadata_loader(),
200+
&arenas,
201+
);
202+
let krate = passes::configure_and_expand(
203+
sess,
204+
&lint_store,
205+
krate,
206+
crate_name,
207+
&mut resolver,
208+
)?;
209+
(Lrc::new(krate), resolver.into_outputs(), lint_store)
210+
};
216211

217212
let ty::ResolverOutputs {
218213
untracked,

0 commit comments

Comments
 (0)