revert mir inlining policy for beta-1.64 to resolve issue #101004.

This commit is contained in:
Felix S. Klock II 2022-08-26 12:18:26 -04:00
parent 82bf34178f
commit 63bb951914

View file

@ -9,7 +9,6 @@ use rustc_middle::mir::visit::*;
use rustc_middle::mir::*;
use rustc_middle::ty::subst::Subst;
use rustc_middle::ty::{self, ConstKind, Instance, InstanceDef, ParamEnv, Ty, TyCtxt};
use rustc_session::config::OptLevel;
use rustc_span::{hygiene::ExpnKind, ExpnData, LocalExpnId, Span};
use rustc_target::spec::abi::Abi;
@ -44,15 +43,8 @@ impl<'tcx> MirPass<'tcx> for Inline {
return enabled;
}
match sess.mir_opt_level() {
0 | 1 => false,
2 => {
(sess.opts.optimize == OptLevel::Default
|| sess.opts.optimize == OptLevel::Aggressive)
&& sess.opts.incremental == None
}
_ => true,
}
// rust-lang/rust#101004: reverted to old inlining decision logic
sess.mir_opt_level() >= 3
}
fn run_pass(&self, tcx: TyCtxt<'tcx>, body: &mut Body<'tcx>) {