Skip to content

Commit df148e4

Browse files
committed
Drop walk_crate_and_attributes.
1 parent bd2f08c commit df148e4

File tree

4 files changed

+10
-20
lines changed

4 files changed

+10
-20
lines changed

compiler/rustc_hir/src/intravisit.rs

-12
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,6 @@
3232
//! example generator inference, and possibly also HIR borrowck.
3333
3434
use crate::hir::*;
35-
use crate::hir_id::CRATE_HIR_ID;
3635
use crate::itemlikevisit::{ItemLikeVisitor, ParItemLikeVisitor};
3736
use rustc_ast::walk_list;
3837
use rustc_ast::{Attribute, Label};
@@ -477,17 +476,6 @@ pub trait Visitor<'v>: Sized {
477476
}
478477
}
479478

480-
/// Walks the contents of a crate. See also `Crate::visit_all_items`.
481-
pub fn walk_crate_and_attributes<'v, V: Visitor<'v>>(visitor: &mut V, krate: &'v Crate<'v>) {
482-
let top_mod = krate.module();
483-
visitor.visit_mod(top_mod, top_mod.inner, CRATE_HIR_ID);
484-
for (&id, attrs) in krate.attrs.iter() {
485-
for a in *attrs {
486-
visitor.visit_attribute(id, a)
487-
}
488-
}
489-
}
490-
491479
pub fn walk_mod<'v, V: Visitor<'v>>(visitor: &mut V, module: &'v Mod<'v>, mod_hir_id: HirId) {
492480
visitor.visit_id(mod_hir_id);
493481
for &item_id in module.item_ids {

compiler/rustc_interface/src/passes.rs

-4
Original file line numberDiff line numberDiff line change
@@ -464,10 +464,6 @@ pub fn lower_to_hir<'res, 'tcx>(
464464
arena,
465465
);
466466

467-
if sess.opts.debugging_opts.hir_stats {
468-
hir_stats::print_hir_stats(&hir_crate);
469-
}
470-
471467
sess.time("early_lint_checks", || {
472468
rustc_lint::check_ast_crate(
473469
sess,

compiler/rustc_passes/src/hir_id_validator.rs

+4
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,10 @@ use rustc_middle::ty::TyCtxt;
1111
pub fn check_crate(tcx: TyCtxt<'_>) {
1212
tcx.dep_graph.assert_ignored();
1313

14+
if tcx.sess.opts.debugging_opts.hir_stats {
15+
crate::hir_stats::print_hir_stats(tcx);
16+
}
17+
1418
let errors = Lock::new(Vec::new());
1519
let hir_map = tcx.hir();
1620

compiler/rustc_passes/src/hir_stats.rs

+6-4
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ use rustc_hir as hir;
99
use rustc_hir::intravisit as hir_visit;
1010
use rustc_hir::HirId;
1111
use rustc_middle::hir::map::Map;
12+
use rustc_middle::ty::TyCtxt;
1213
use rustc_middle::util::common::to_readable_str;
1314
use rustc_span::Span;
1415

@@ -25,18 +26,19 @@ struct NodeData {
2526
}
2627

2728
struct StatCollector<'k> {
28-
krate: Option<&'k hir::Crate<'k>>,
29+
krate: Option<Map<'k>>,
2930
data: FxHashMap<&'static str, NodeData>,
3031
seen: FxHashSet<Id>,
3132
}
3233

33-
pub fn print_hir_stats(krate: &hir::Crate<'_>) {
34+
pub fn print_hir_stats(tcx: TyCtxt<'_>) {
3435
let mut collector = StatCollector {
35-
krate: Some(krate),
36+
krate: Some(tcx.hir()),
3637
data: FxHashMap::default(),
3738
seen: FxHashSet::default(),
3839
};
39-
hir_visit::walk_crate_and_attributes(&mut collector, krate);
40+
tcx.hir().walk_crate(&mut collector);
41+
tcx.hir().walk_attributes(&mut collector);
4042
collector.print("HIR STATS");
4143
}
4244

0 commit comments

Comments
 (0)