Skip to content

Commit e596579

Browse files
committed
inline explicit rpo access in promote consts
1 parent afa9fef commit e596579

File tree

1 file changed

+2
-5
lines changed

1 file changed

+2
-5
lines changed

compiler/rustc_const_eval/src/transform/promote_consts.rs

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@
1414
1515
use rustc_hir as hir;
1616
use rustc_middle::mir;
17-
use rustc_middle::mir::traversal::ReversePostorderIter;
1817
use rustc_middle::mir::visit::{MutVisitor, MutatingUseContext, PlaceContext, Visitor};
1918
use rustc_middle::mir::*;
2019
use rustc_middle::ty::subst::InternalSubsts;
@@ -53,9 +52,8 @@ impl<'tcx> MirPass<'tcx> for PromoteTemps<'tcx> {
5352
return;
5453
}
5554

56-
let mut rpo = traversal::reverse_postorder(body);
5755
let ccx = ConstCx::new(tcx, body);
58-
let (mut temps, all_candidates) = collect_temps_and_candidates(&ccx, &mut rpo);
56+
let (mut temps, all_candidates) = collect_temps_and_candidates(&ccx);
5957

6058
let promotable_candidates = validate_candidates(&ccx, &mut temps, &all_candidates);
6159

@@ -166,14 +164,13 @@ impl<'tcx> Visitor<'tcx> for Collector<'_, 'tcx> {
166164

167165
pub fn collect_temps_and_candidates<'tcx>(
168166
ccx: &ConstCx<'_, 'tcx>,
169-
rpo: &mut ReversePostorderIter<'_, 'tcx>,
170167
) -> (IndexVec<Local, TempState>, Vec<Candidate>) {
171168
let mut collector = Collector {
172169
temps: IndexVec::from_elem(TempState::Undefined, &ccx.body.local_decls),
173170
candidates: vec![],
174171
ccx,
175172
};
176-
for (bb, data) in rpo {
173+
for (bb, data) in traversal::reverse_postorder(ccx.body) {
177174
collector.visit_basic_block_data(bb, data);
178175
}
179176
(collector.temps, collector.candidates)

0 commit comments

Comments
 (0)