Skip to content

Commit f2892ad

Browse files
committed
Emit EndRegion statements when given -Z mir-emit-validate=N (for N > 0).
This way the miri test suite does not have to be updated to explcitly request `-Z emit-end-regions`.
1 parent c11f3e3 commit f2892ad

File tree

3 files changed

+6
-2
lines changed

3 files changed

+6
-2
lines changed

src/librustc/session/mod.rs

+4
Original file line numberDiff line numberDiff line change
@@ -410,6 +410,10 @@ impl Session {
410410
pub fn print_llvm_passes(&self) -> bool {
411411
self.opts.debugging_opts.print_llvm_passes
412412
}
413+
pub fn emit_end_regions(&self) -> bool {
414+
self.opts.debugging_opts.emit_end_regions ||
415+
(self.opts.debugging_opts.mir_emit_validate > 0)
416+
}
413417
pub fn lto(&self) -> bool {
414418
self.opts.cg.lto
415419
}

src/librustc_mir/build/cfg.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ impl<'tcx> CFG<'tcx> {
5050
block: BasicBlock,
5151
source_info: SourceInfo,
5252
region_scope: region::Scope) {
53-
if tcx.sess.opts.debugging_opts.emit_end_regions {
53+
if tcx.sess.emit_end_regions() {
5454
self.push(block, Statement {
5555
source_info,
5656
kind: StatementKind::EndRegion(region_scope),

src/librustc_mir/transform/clean_end_regions.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ impl MirPass for CleanEndRegions {
4242
tcx: TyCtxt<'a, 'tcx, 'tcx>,
4343
_source: MirSource,
4444
mir: &mut Mir<'tcx>) {
45-
if !tcx.sess.opts.debugging_opts.emit_end_regions { return; }
45+
if !tcx.sess.emit_end_regions() { return; }
4646

4747
let mut gather = GatherBorrowedRegions {
4848
seen_regions: FxHashSet()

0 commit comments

Comments
 (0)