diff options
| author | Niko Matsakis <niko@alum.mit.edu> | 2017-05-02 13:58:49 -0400 |
|---|---|---|
| committer | Niko Matsakis <niko@alum.mit.edu> | 2017-05-02 16:21:58 -0400 |
| commit | 25be7983e80bb1c370772ebbb97891d2030d68f0 (patch) | |
| tree | 9962fe334f683ffb40ee9d57439239d990ad80b2 /src | |
| parent | afc5acd84ba97e1e767dc489ebcc07c0bfc2c5cb (diff) | |
| download | rust-25be7983e80bb1c370772ebbb97891d2030d68f0.tar.gz rust-25be7983e80bb1c370772ebbb97891d2030d68f0.zip | |
remove `mir_passes` from `Session` and add a FIXME
Diffstat (limited to 'src')
| -rw-r--r-- | src/librustc/mir/transform.rs | 2 | ||||
| -rw-r--r-- | src/librustc/session/mod.rs | 3 | ||||
| -rw-r--r-- | src/librustc_driver/driver.rs | 4 | ||||
| -rw-r--r-- | src/librustc_driver/test.rs | 3 |
4 files changed, 6 insertions, 6 deletions
diff --git a/src/librustc/mir/transform.rs b/src/librustc/mir/transform.rs index 77d4eefb1de..aa91123ef69 100644 --- a/src/librustc/mir/transform.rs +++ b/src/librustc/mir/transform.rs @@ -134,6 +134,8 @@ pub trait MirPass { } /// A manager for MIR passes. +/// +/// FIXME(#41712) -- it is unclear whether we should have this struct. #[derive(Clone)] pub struct Passes { pass_hooks: Vec<Rc<PassHook>>, diff --git a/src/librustc/session/mod.rs b/src/librustc/session/mod.rs index c8732c31663..ec3eaa124c3 100644 --- a/src/librustc/session/mod.rs +++ b/src/librustc/session/mod.rs @@ -21,7 +21,6 @@ use session::config::DebugInfoLevel; use ty::tls; use util::nodemap::{FxHashMap, FxHashSet}; use util::common::duration_to_secs_str; -use mir::transform as mir_pass; use syntax::ast::NodeId; use errors::{self, DiagnosticBuilder}; @@ -85,7 +84,6 @@ pub struct Session { /// redundantly verbose output (Issue #24690). pub one_time_diagnostics: RefCell<FxHashSet<(lint::LintId, Span, String)>>, pub plugin_llvm_passes: RefCell<Vec<String>>, - pub mir_passes: RefCell<mir_pass::Passes>, pub plugin_attributes: RefCell<Vec<(String, AttributeType)>>, pub crate_types: RefCell<Vec<config::CrateType>>, pub dependency_formats: RefCell<dependency_format::Dependencies>, @@ -670,7 +668,6 @@ pub fn build_session_(sopts: config::Options, lints: RefCell::new(lint::LintTable::new()), one_time_diagnostics: RefCell::new(FxHashSet()), plugin_llvm_passes: RefCell::new(Vec::new()), - mir_passes: RefCell::new(mir_pass::Passes::new()), plugin_attributes: RefCell::new(Vec::new()), crate_types: RefCell::new(Vec::new()), dependency_formats: RefCell::new(FxHashMap()), diff --git a/src/librustc_driver/driver.rs b/src/librustc_driver/driver.rs index 83502708584..9f0f567b6ce 100644 --- a/src/librustc_driver/driver.rs +++ b/src/librustc_driver/driver.rs @@ -20,7 +20,7 @@ use rustc::session::search_paths::PathKind; use rustc::lint; use rustc::middle::{self, dependency_format, stability, reachable}; use rustc::middle::privacy::AccessLevels; -use rustc::mir::transform::{MIR_CONST, MIR_VALIDATED, MIR_OPTIMIZED}; +use rustc::mir::transform::{MIR_CONST, MIR_VALIDATED, MIR_OPTIMIZED, Passes}; use rustc::ty::{self, TyCtxt, Resolutions, GlobalArenas}; use rustc::util::common::time; use rustc::util::nodemap::NodeSet; @@ -904,7 +904,7 @@ pub fn phase_3_run_analysis_passes<'tcx, F, R>(sess: &'tcx Session, rustc_const_eval::provide(&mut extern_providers); // Setup the MIR passes that we want to run. - let mut passes = sess.mir_passes.borrow().clone(); + let mut passes = Passes::new(); passes.push_hook(mir::transform::dump_mir::DumpMir); // What we need to do constant evaluation. diff --git a/src/librustc_driver/test.rs b/src/librustc_driver/test.rs index 49405563406..8b95be00fa7 100644 --- a/src/librustc_driver/test.rs +++ b/src/librustc_driver/test.rs @@ -27,6 +27,7 @@ use rustc::infer::{self, InferOk, InferResult}; use rustc::infer::type_variable::TypeVariableOrigin; use rustc_metadata::cstore::CStore; use rustc::hir::map as hir_map; +use rustc::mir::transform::Passes; use rustc::session::{self, config}; use std::rc::Rc; use syntax::ast; @@ -141,7 +142,7 @@ fn test_env<F>(source_string: &str, TyCtxt::create_and_enter(&sess, ty::maps::Providers::default(), ty::maps::Providers::default(), - Rc::new(sess.mir_passes.borrow().clone()), + Rc::new(Passes::new()), &arenas, &arena, resolutions, |
