about summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
authorAriel Ben-Yehuda <ariel.byd@gmail.com>2016-10-04 16:23:01 +0300
committerAriel Ben-Yehuda <ariel.byd@gmail.com>2016-10-04 16:23:01 +0300
commitae51ccfa771ffdfae63ad2a5a9deecf9712833d8 (patch)
treecc7381d9bb6d1b317f6ea553a79eed342209f5c8 /src
parentf3745653e10e366e7e119a12c178a59ab6394007 (diff)
downloadrust-ae51ccfa771ffdfae63ad2a5a9deecf9712833d8.tar.gz
rust-ae51ccfa771ffdfae63ad2a5a9deecf9712833d8.zip
SimplifyCfg: simplify the start block
Diffstat (limited to 'src')
-rw-r--r--src/librustc_mir/transform/simplify_cfg.rs3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/librustc_mir/transform/simplify_cfg.rs b/src/librustc_mir/transform/simplify_cfg.rs
index 8e1b7b44976..228fa468841 100644
--- a/src/librustc_mir/transform/simplify_cfg.rs
+++ b/src/librustc_mir/transform/simplify_cfg.rs
@@ -50,6 +50,7 @@ impl<'a> SimplifyCfg<'a> {
 
 impl<'l, 'tcx> MirPass<'tcx> for SimplifyCfg<'l> {
     fn run_pass<'a>(&mut self, _tcx: TyCtxt<'a, 'tcx, 'tcx>, _src: MirSource, mir: &mut Mir<'tcx>) {
+        debug!("SimplifyCfg({:?}) - simplifying {:?}", self.label, mir);
         CfgSimplifier::new(mir).simplify();
         remove_dead_blocks(mir);
 
@@ -78,6 +79,8 @@ impl<'a, 'tcx: 'a> CfgSimplifier<'a, 'tcx> {
 
         // we can't use mir.predecessors() here because that counts
         // dead blocks, which we don't want to.
+        pred_count[START_BLOCK] = 1;
+
         for (_, data) in traversal::preorder(mir) {
             if let Some(ref term) = data.terminator {
                 for &tgt in term.successors().iter() {