From 7db332434005b823ca151804193837eaf904d2a3 Mon Sep 17 00:00:00 2001 From: dylan_DPC Date: Sat, 21 Jul 2018 11:42:44 +0530 Subject: [PATCH] remove unwanted tests and a reference to it in comments --- src/librustc_mir/util/liveness.rs | 8 ++-- .../mir-opt/nll/liveness-call-subtlety.rs | 45 ----------------- .../mir-opt/nll/liveness-drop-intra-block.rs | 41 ---------------- src/test/mir-opt/nll/liveness-interblock.rs | 48 ------------------- 4 files changed, 3 insertions(+), 139 deletions(-) delete mode 100644 src/test/mir-opt/nll/liveness-call-subtlety.rs delete mode 100644 src/test/mir-opt/nll/liveness-drop-intra-block.rs delete mode 100644 src/test/mir-opt/nll/liveness-interblock.rs diff --git a/src/librustc_mir/util/liveness.rs b/src/librustc_mir/util/liveness.rs index 3383a3b8368c..6c5b38a806e5 100644 --- a/src/librustc_mir/util/liveness.rs +++ b/src/librustc_mir/util/liveness.rs @@ -294,11 +294,9 @@ pub fn categorize<'tcx>(context: PlaceContext<'tcx>, mode: LivenessMode) -> Opti // We let Call define the result in both the success and // unwind cases. This is not really correct, however it // does not seem to be observable due to the way that we - // generate MIR. See the test case - // `mir-opt/nll/liveness-call-subtlety.rs`. To do things - // properly, we would apply the def in call only to the - // input from the success path and not the unwind - // path. -nmatsakis + // generate MIR. To do things properly, we would apply + // the def in call only to the input from the success + // path and not the unwind path. -nmatsakis PlaceContext::Call | // Storage live and storage dead aren't proper defines, but we can ignore diff --git a/src/test/mir-opt/nll/liveness-call-subtlety.rs b/src/test/mir-opt/nll/liveness-call-subtlety.rs deleted file mode 100644 index 5fdea4208df9..000000000000 --- a/src/test/mir-opt/nll/liveness-call-subtlety.rs +++ /dev/null @@ -1,45 +0,0 @@ -// Copyright 2012-2016 The Rust Project Developers. See the COPYRIGHT -// file at the top-level directory of this distribution and at -// http://rust-lang.org/COPYRIGHT. -// -// Licensed under the Apache License, Version 2.0 or the MIT license -// , at your -// option. This file may not be copied, modified, or distributed -// except according to those terms. - -// compile-flags:-Zborrowck=mir - -fn can_panic() -> Box { - Box::new(44) -} - -fn main() { - let mut x = Box::new(22); - x = can_panic(); -} - -// Check that: -// - `_1` is the variable corresponding to `x` -// and -// - `_1` is live when `can_panic` is called (because it may be dropped) -// -// END RUST SOURCE -// START rustc.main.nll.0.mir -// bb0: { -// | Live variables on entry to bb0[0]: [] -// StorageLive(_1); -// | Live variables on entry to bb0[1]: [] -// _1 = const >::new(const 22usize) -> [return: bb2, unwind: bb1]; -// | Live variables on exit from bb0: [_1 (drop)] -// } -// END rustc.main.nll.0.mir -// START rustc.main.nll.0.mir -// bb2: { -// | Live variables on entry to bb2[0]: [_1 (drop)] -// StorageLive(_2); -// | Live variables on entry to bb2[1]: [_1 (drop)] -// _2 = const can_panic() -> [return: bb3, unwind: bb4]; -// | Live variables on exit from bb2: [_1 (drop), _2] -// } -// END rustc.main.nll.0.mir diff --git a/src/test/mir-opt/nll/liveness-drop-intra-block.rs b/src/test/mir-opt/nll/liveness-drop-intra-block.rs deleted file mode 100644 index 001499b657de..000000000000 --- a/src/test/mir-opt/nll/liveness-drop-intra-block.rs +++ /dev/null @@ -1,41 +0,0 @@ -// Copyright 2012-2016 The Rust Project Developers. See the COPYRIGHT -// file at the top-level directory of this distribution and at -// http://rust-lang.org/COPYRIGHT. -// -// Licensed under the Apache License, Version 2.0 or the MIT license -// , at your -// option. This file may not be copied, modified, or distributed -// except according to those terms. - -// compile-flags:-Zborrowck=mir - -#![allow(warnings)] - -fn use_x(_: usize) -> bool { true } - -fn main() { - let mut x = 22; - loop { - // Key point: `x` not live on entry to this basic block. - x = 55; - if use_x(x) { break; } - } -} - -// END RUST SOURCE -// START rustc.main.nll.0.mir -// bb3: { -// | Live variables on entry to bb3[0]: [] -// _1 = const 55usize; -// | Live variables on entry to bb3[1]: [_1] -// StorageLive(_3); -// | Live variables on entry to bb3[2]: [_1] -// StorageLive(_4); -// | Live variables on entry to bb3[3]: [_1] -// _4 = _1; -// | Live variables on entry to bb3[4]: [_4] -// _3 = const use_x(move _4) -> [return: bb4, unwind: bb1]; -// | Live variables on exit from bb3: [_3] -// } -// END rustc.main.nll.0.mir diff --git a/src/test/mir-opt/nll/liveness-interblock.rs b/src/test/mir-opt/nll/liveness-interblock.rs deleted file mode 100644 index fbe20d76ea72..000000000000 --- a/src/test/mir-opt/nll/liveness-interblock.rs +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2012-2016 The Rust Project Developers. See the COPYRIGHT -// file at the top-level directory of this distribution and at -// http://rust-lang.org/COPYRIGHT. -// -// Licensed under the Apache License, Version 2.0 or the MIT license -// , at your -// option. This file may not be copied, modified, or distributed -// except according to those terms. - -// compile-flags:-Zborrowck=mir - -fn cond() -> bool { false } - -fn make_live(_: usize) { } - -fn make_dead() { } - -fn main() { - let x = 5; - - if cond() { - make_live(x); - } else { - // x should be dead on entry to this block - make_dead(); - } -} - -// END RUST SOURCE -// START rustc.main.nll.0.mir -// bb3: { -// | Live variables on entry to bb3[0]: [_1] -// StorageLive(_4); -// | Live variables on entry to bb3[1]: [_1] -// _4 = _1; -// | Live variables on entry to bb3[2]: [_4] -// _3 = const make_live(move _4) -> [return: bb5, unwind: bb1]; -// | Live variables on exit from bb3: [] -// } -// END rustc.main.nll.0.mir -// START rustc.main.nll.0.mir -// bb4: { -// | Live variables on entry to bb4[0]: [] -// _5 = const make_dead() -> [return: bb6, unwind: bb1]; -// | Live variables on exit from bb4: [] -// } -// END rustc.main.nll.0.mir