Skip to content

Commit 25be798

Browse files
committed
remove mir_passes from Session and add a FIXME
1 parent afc5acd commit 25be798

File tree

4 files changed

+6
-6
lines changed

4 files changed

+6
-6
lines changed

src/librustc/mir/transform.rs

+2
Original file line numberDiff line numberDiff line change
@@ -134,6 +134,8 @@ pub trait MirPass {
134134
}
135135

136136
/// A manager for MIR passes.
137+
///
138+
/// FIXME(#41712) -- it is unclear whether we should have this struct.
137139
#[derive(Clone)]
138140
pub struct Passes {
139141
pass_hooks: Vec<Rc<PassHook>>,

src/librustc/session/mod.rs

-3
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,6 @@ use session::config::DebugInfoLevel;
2121
use ty::tls;
2222
use util::nodemap::{FxHashMap, FxHashSet};
2323
use util::common::duration_to_secs_str;
24-
use mir::transform as mir_pass;
2524

2625
use syntax::ast::NodeId;
2726
use errors::{self, DiagnosticBuilder};
@@ -85,7 +84,6 @@ pub struct Session {
8584
/// redundantly verbose output (Issue #24690).
8685
pub one_time_diagnostics: RefCell<FxHashSet<(lint::LintId, Span, String)>>,
8786
pub plugin_llvm_passes: RefCell<Vec<String>>,
88-
pub mir_passes: RefCell<mir_pass::Passes>,
8987
pub plugin_attributes: RefCell<Vec<(String, AttributeType)>>,
9088
pub crate_types: RefCell<Vec<config::CrateType>>,
9189
pub dependency_formats: RefCell<dependency_format::Dependencies>,
@@ -670,7 +668,6 @@ pub fn build_session_(sopts: config::Options,
670668
lints: RefCell::new(lint::LintTable::new()),
671669
one_time_diagnostics: RefCell::new(FxHashSet()),
672670
plugin_llvm_passes: RefCell::new(Vec::new()),
673-
mir_passes: RefCell::new(mir_pass::Passes::new()),
674671
plugin_attributes: RefCell::new(Vec::new()),
675672
crate_types: RefCell::new(Vec::new()),
676673
dependency_formats: RefCell::new(FxHashMap()),

src/librustc_driver/driver.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ use rustc::session::search_paths::PathKind;
2020
use rustc::lint;
2121
use rustc::middle::{self, dependency_format, stability, reachable};
2222
use rustc::middle::privacy::AccessLevels;
23-
use rustc::mir::transform::{MIR_CONST, MIR_VALIDATED, MIR_OPTIMIZED};
23+
use rustc::mir::transform::{MIR_CONST, MIR_VALIDATED, MIR_OPTIMIZED, Passes};
2424
use rustc::ty::{self, TyCtxt, Resolutions, GlobalArenas};
2525
use rustc::util::common::time;
2626
use rustc::util::nodemap::NodeSet;
@@ -904,7 +904,7 @@ pub fn phase_3_run_analysis_passes<'tcx, F, R>(sess: &'tcx Session,
904904
rustc_const_eval::provide(&mut extern_providers);
905905

906906
// Setup the MIR passes that we want to run.
907-
let mut passes = sess.mir_passes.borrow().clone();
907+
let mut passes = Passes::new();
908908
passes.push_hook(mir::transform::dump_mir::DumpMir);
909909

910910
// What we need to do constant evaluation.

src/librustc_driver/test.rs

+2-1
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ use rustc::infer::{self, InferOk, InferResult};
2727
use rustc::infer::type_variable::TypeVariableOrigin;
2828
use rustc_metadata::cstore::CStore;
2929
use rustc::hir::map as hir_map;
30+
use rustc::mir::transform::Passes;
3031
use rustc::session::{self, config};
3132
use std::rc::Rc;
3233
use syntax::ast;
@@ -141,7 +142,7 @@ fn test_env<F>(source_string: &str,
141142
TyCtxt::create_and_enter(&sess,
142143
ty::maps::Providers::default(),
143144
ty::maps::Providers::default(),
144-
Rc::new(sess.mir_passes.borrow().clone()),
145+
Rc::new(Passes::new()),
145146
&arenas,
146147
&arena,
147148
resolutions,

0 commit comments

Comments
 (0)