We don't need NonNull::as_ptr
debuginfo
Stop pessimizing the use of local variables in core by skipping debug info for MIR temporaries in tiny (single-BB) functions. For functions as simple as this -- `Pin::new`, etc -- nobody every actually wants debuginfo for them in the first place. They're more like intrinsics than real functions, and stepping over them is good.
This commit is contained in:
parent
96e51d9482
commit
a7fc76a3ab
11 changed files with 174 additions and 110 deletions
|
@ -189,6 +189,7 @@ declare_passes! {
|
|||
mod simplify_comparison_integral : SimplifyComparisonIntegral;
|
||||
mod single_use_consts : SingleUseConsts;
|
||||
mod sroa : ScalarReplacementOfAggregates;
|
||||
mod strip_debuginfo : StripDebugInfo;
|
||||
mod unreachable_enum_branching : UnreachableEnumBranching;
|
||||
mod unreachable_prop : UnreachablePropagation;
|
||||
mod validate : Validator;
|
||||
|
@ -699,6 +700,8 @@ fn run_optimization_passes<'tcx>(tcx: TyCtxt<'tcx>, body: &mut Body<'tcx>) {
|
|||
&o1(simplify_branches::SimplifyConstCondition::Final),
|
||||
&o1(remove_noop_landing_pads::RemoveNoopLandingPads),
|
||||
&o1(simplify::SimplifyCfg::Final),
|
||||
// After the last SimplifyCfg, because this wants one-block functions.
|
||||
&strip_debuginfo::StripDebugInfo,
|
||||
©_prop::CopyProp,
|
||||
&dead_store_elimination::DeadStoreElimination::Final,
|
||||
&nrvo::RenameReturnPlace,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue