Skip to content

Commit 003d5a6

Browse files
self-profiling: Add events for tracking crate metadata loading related activities.
1 parent 9dbd7be commit 003d5a6

File tree

2 files changed

+8
-0
lines changed

2 files changed

+8
-0
lines changed

src/librustc_metadata/creader.rs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -197,6 +197,9 @@ impl<'a> CrateLoader<'a> {
197197
dep_kind: DepKind,
198198
name: Symbol
199199
) -> (CrateNum, Lrc<cstore::CrateMetadata>) {
200+
let _prof_timer =
201+
self.sess.prof.generic_activity("metadata_register_crate");
202+
200203
let crate_root = lib.metadata.get_root();
201204
self.verify_no_symbol_conflicts(span, &crate_root);
202205

src/librustc_metadata/cstore_impl.rs

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,9 @@ macro_rules! provide {
4747
$tcx: TyCtxt<$lt>,
4848
def_id_arg: T,
4949
) -> <ty::queries::$name<$lt> as QueryConfig<$lt>>::Value {
50+
let _prof_timer =
51+
$tcx.prof.generic_activity("metadata_decode_entry");
52+
5053
#[allow(unused_variables)]
5154
let ($def_id, $other) = def_id_arg.into_args();
5255
assert!(!$def_id.is_local());
@@ -444,6 +447,8 @@ impl cstore::CStore {
444447
}
445448

446449
pub fn load_macro_untracked(&self, id: DefId, sess: &Session) -> LoadedMacro {
450+
let _prof_timer = sess.prof.generic_activity("metadata_load_macro");
451+
447452
let data = self.get_crate_data(id.krate);
448453
if data.is_proc_macro_crate() {
449454
return LoadedMacro::ProcMacro(data.load_proc_macro(id.index, sess));

0 commit comments

Comments
 (0)