diff options
| author | Ze'ev Maor <zeevm@microsoft.com> | 2022-07-05 23:38:52 +0300 |
|---|---|---|
| committer | Ze'ev Maor <zeevm@microsoft.com> | 2022-07-05 23:38:52 +0300 |
| commit | 099cb5ad8ab622451a3cd67276522a2a79b8608f (patch) | |
| tree | 85b94ed60b70751b882bb4e6fc4c41bf69b88452 /compiler/rustc_mir_transform/src | |
| parent | 41ad4d9b2dbb895666337d162eda52619a6056db (diff) | |
| download | rust-099cb5ad8ab622451a3cd67276522a2a79b8608f.tar.gz rust-099cb5ad8ab622451a3cd67276522a2a79b8608f.zip | |
only enable ConstProp on opt level 2
Diffstat (limited to 'compiler/rustc_mir_transform/src')
| -rw-r--r-- | compiler/rustc_mir_transform/src/const_prop.rs | 13 |
1 files changed, 2 insertions, 11 deletions
diff --git a/compiler/rustc_mir_transform/src/const_prop.rs b/compiler/rustc_mir_transform/src/const_prop.rs index 36844d5f6cf..05d59a7acf4 100644 --- a/compiler/rustc_mir_transform/src/const_prop.rs +++ b/compiler/rustc_mir_transform/src/const_prop.rs @@ -60,11 +60,8 @@ macro_rules! throw_machine_stop_str { pub struct ConstProp; impl<'tcx> MirPass<'tcx> for ConstProp { - fn is_enabled(&self, _sess: &rustc_session::Session) -> bool { - // FIXME(#70073): Unlike the other passes in "optimizations", this one emits errors, so it - // runs even when MIR optimizations are disabled. We should separate the lint out from the - // transform and move the lint as early in the pipeline as possible. - true + fn is_enabled(&self, sess: &rustc_session::Session) -> bool { + sess.mir_opt_level() >= 2 } #[instrument(skip(self, tcx), level = "debug")] @@ -786,12 +783,6 @@ impl<'mir, 'tcx> ConstPropagator<'mir, 'tcx> { /// Returns `true` if and only if this `op` should be const-propagated into. fn should_const_prop(&mut self, op: &OpTy<'tcx>) -> bool { - let mir_opt_level = self.tcx.sess.mir_opt_level(); - - if mir_opt_level == 0 { - return false; - } - if !self.tcx.consider_optimizing(|| format!("ConstantPropagation - OpTy: {:?}", op)) { return false; } |
