Auto merge of #86777 - tmiasko:estimate-terminators, r=estebank
Include terminators in instance size estimate For example, drop glue generated for struct below, doesn't have any statements, only terminators. Previously it received an estimate of 0, the new estimate is 13 (6+5 drop terminators, +1 resume, +1 return). ```rust struct S { a: String, b: String, c: String, d: String, e: String, f: String, } ``` Originally reported in https://github.com/rust-lang/rust/issues/69382#issue-569392141
This commit is contained in:
commit
7a9ff746fe
1 changed files with 1 additions and 1 deletions
|
@ -402,7 +402,7 @@ fn instance_def_size_estimate<'tcx>(
|
|||
match instance_def {
|
||||
InstanceDef::Item(..) | InstanceDef::DropGlue(..) => {
|
||||
let mir = tcx.instance_mir(instance_def);
|
||||
mir.basic_blocks().iter().map(|bb| bb.statements.len()).sum()
|
||||
mir.basic_blocks().iter().map(|bb| bb.statements.len() + 1).sum()
|
||||
}
|
||||
// Estimate the size of other compiler-generated shims to be 1.
|
||||
_ => 1,
|
||||
|
|
Loading…
Add table
Reference in a new issue