diff options
| author | csmoe <35686186+csmoe@users.noreply.github.com> | 2018-07-05 09:06:04 +0800 |
|---|---|---|
| committer | csmoe <35686186+csmoe@users.noreply.github.com> | 2018-07-05 09:46:10 +0800 |
| commit | 37228fe63286a920ad18cf72d37dfe69c7e8dc2d (patch) | |
| tree | 8f7bdf75ff6ab6ee72a5113e3731a67f31e02068 /src/librustc_mir/dataflow/mod.rs | |
| parent | 8fa9bfeb154e18b6a9caaabd1494fddea9d0d63a (diff) | |
| download | rust-37228fe63286a920ad18cf72d37dfe69c7e8dc2d.tar.gz rust-37228fe63286a920ad18cf72d37dfe69c7e8dc2d.zip | |
reverse_postorder
Diffstat (limited to 'src/librustc_mir/dataflow/mod.rs')
| -rw-r--r-- | src/librustc_mir/dataflow/mod.rs | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/librustc_mir/dataflow/mod.rs b/src/librustc_mir/dataflow/mod.rs index 98cd9c35d88..8ed42a707dd 100644 --- a/src/librustc_mir/dataflow/mod.rs +++ b/src/librustc_mir/dataflow/mod.rs @@ -16,6 +16,7 @@ use rustc_data_structures::bitslice::{bitwise, BitwiseOperator}; use rustc::ty::{self, TyCtxt}; use rustc::mir::{self, Mir, BasicBlock, BasicBlockData, Location, Statement, Terminator}; +use rustc::mir::traversal; use rustc::session::Session; use std::borrow::Borrow; @@ -333,7 +334,7 @@ pub(crate) trait DataflowResultsConsumer<'a, 'tcx: 'a> { fn analyze_results(&mut self, flow_uninit: &mut Self::FlowState) { let flow = flow_uninit; - for bb in self.mir().basic_blocks().indices() { + for (bb, _) in traversal::reverse_postorder(self.mir()) { flow.reset_to_entry_of(bb); self.process_basic_block(bb, flow); } |
