Remove instance_def_size_estimate
query.
It doesn't seem worthwhile now that `MonoItem::size_estimate` is called much less often.
This commit is contained in:
parent
87c509da95
commit
005a70e303
3 changed files with 12 additions and 28 deletions
|
@ -59,12 +59,19 @@ impl<'tcx> MonoItem<'tcx> {
|
|||
pub fn size_estimate(&self, tcx: TyCtxt<'tcx>) -> usize {
|
||||
match *self {
|
||||
MonoItem::Fn(instance) => {
|
||||
// Estimate the size of a function based on how many statements
|
||||
// it contains.
|
||||
tcx.instance_def_size_estimate(instance.def)
|
||||
match instance.def {
|
||||
// "Normal" functions size estimate: the number of
|
||||
// statements, plus one for the terminator.
|
||||
InstanceDef::Item(..) | InstanceDef::DropGlue(..) => {
|
||||
let mir = tcx.instance_mir(instance.def);
|
||||
mir.basic_blocks.iter().map(|bb| bb.statements.len() + 1).sum()
|
||||
}
|
||||
// Other compiler-generated shims size estimate: 1
|
||||
_ => 1,
|
||||
}
|
||||
}
|
||||
// Conservatively estimate the size of a static declaration
|
||||
// or assembly to be 1.
|
||||
// Conservatively estimate the size of a static declaration or
|
||||
// assembly item to be 1.
|
||||
MonoItem::Static(_) | MonoItem::GlobalAsm(_) => 1,
|
||||
}
|
||||
}
|
||||
|
|
|
@ -2080,12 +2080,6 @@ rustc_queries! {
|
|||
desc { "looking up supported target features" }
|
||||
}
|
||||
|
||||
/// Get an estimate of the size of an InstanceDef based on its MIR for CGU partitioning.
|
||||
query instance_def_size_estimate(def: ty::InstanceDef<'tcx>)
|
||||
-> usize {
|
||||
desc { |tcx| "estimating size for `{}`", tcx.def_path_str(def.def_id()) }
|
||||
}
|
||||
|
||||
query features_query(_: ()) -> &'tcx rustc_feature::Features {
|
||||
feedable
|
||||
desc { "looking up enabled feature gates" }
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue