+ // MIR for `match_nested_if` after MatchBranchSimplification
fn match_nested_if() -> bool {
- let mut _0: bool; // return place in scope 0 at $DIR/matches_reduce_branches.rs:38:25: 38:29
- let _1: bool; // in scope 0 at $DIR/matches_reduce_branches.rs:39:9: 39:12
- let mut _2: (); // in scope 0 at $DIR/matches_reduce_branches.rs:39:21: 39:23
- let mut _3: bool; // in scope 0 at $DIR/matches_reduce_branches.rs:40:15: 40:88
- let mut _4: bool; // in scope 0 at $DIR/matches_reduce_branches.rs:40:18: 40:68
- let mut _5: bool; // in scope 0 at $DIR/matches_reduce_branches.rs:40:21: 40:48
- let mut _6: bool; // in scope 0 at $DIR/matches_reduce_branches.rs:40:24: 40:28
-+ let mut _7: bool; // in scope 0 at $DIR/matches_reduce_branches.rs:40:21: 40:48
-+ let mut _8: bool; // in scope 0 at $DIR/matches_reduce_branches.rs:40:18: 40:68
-+ let mut _9: bool; // in scope 0 at $DIR/matches_reduce_branches.rs:40:15: 40:88
-+ let mut _10: bool; // in scope 0 at $DIR/matches_reduce_branches.rs:40:15: 40:88
+ let mut _0: bool; // return place in scope 0 at $DIR/matches_reduce_branches.rs:39:25: 39:29
+ let _1: bool; // in scope 0 at $DIR/matches_reduce_branches.rs:40:9: 40:12
+ let mut _2: (); // in scope 0 at $DIR/matches_reduce_branches.rs:40:21: 40:23
+ let mut _3: bool; // in scope 0 at $DIR/matches_reduce_branches.rs:41:15: 45:10
+ let mut _4: bool; // in scope 0 at $DIR/matches_reduce_branches.rs:41:18: 41:76
+ let mut _5: bool; // in scope 0 at $DIR/matches_reduce_branches.rs:41:21: 41:52
+ let mut _6: bool; // in scope 0 at $DIR/matches_reduce_branches.rs:41:24: 41:28
++ let mut _7: bool; // in scope 0 at $DIR/matches_reduce_branches.rs:41:21: 41:52
++ let mut _8: bool; // in scope 0 at $DIR/matches_reduce_branches.rs:41:18: 41:76
++ let mut _9: bool; // in scope 0 at $DIR/matches_reduce_branches.rs:41:15: 45:10
++ let mut _10: bool; // in scope 0 at $DIR/matches_reduce_branches.rs:41:15: 45:10
scope 1 {
- debug val => _1; // in scope 1 at $DIR/matches_reduce_branches.rs:39:9: 39:12
+ debug val => _1; // in scope 1 at $DIR/matches_reduce_branches.rs:40:9: 40:12
}
bb0: {
- StorageLive(_1); // scope 0 at $DIR/matches_reduce_branches.rs:39:9: 39:12
- StorageLive(_2); // scope 0 at $DIR/matches_reduce_branches.rs:39:21: 39:23
- StorageLive(_3); // scope 0 at $DIR/matches_reduce_branches.rs:40:15: 40:88
- StorageLive(_4); // scope 0 at $DIR/matches_reduce_branches.rs:40:18: 40:68
- StorageLive(_5); // scope 0 at $DIR/matches_reduce_branches.rs:40:21: 40:48
- StorageLive(_6); // scope 0 at $DIR/matches_reduce_branches.rs:40:24: 40:28
- _6 = const true; // scope 0 at $DIR/matches_reduce_branches.rs:40:24: 40:28
-- switchInt(move _6) -> [false: bb2, otherwise: bb1]; // scope 0 at $DIR/matches_reduce_branches.rs:40:21: 40:48
-+ StorageLive(_7); // scope 0 at $DIR/matches_reduce_branches.rs:40:21: 40:48
-+ _7 = move _6; // scope 0 at $DIR/matches_reduce_branches.rs:40:21: 40:48
-+ _5 = Ne(_7, const false); // scope 0 at $DIR/matches_reduce_branches.rs:40:42: 40:47
-+ StorageDead(_7); // scope 0 at $DIR/matches_reduce_branches.rs:40:21: 40:48
-+ goto -> bb3; // scope 0 at $DIR/matches_reduce_branches.rs:40:21: 40:48
- }
-
- bb1: {
- _5 = const true; // scope 0 at $DIR/matches_reduce_branches.rs:40:30: 40:34
- goto -> bb3; // scope 0 at $DIR/matches_reduce_branches.rs:40:21: 40:48
- }
-
- bb2: {
- _5 = const false; // scope 0 at $DIR/matches_reduce_branches.rs:40:42: 40:47
- goto -> bb3; // scope 0 at $DIR/matches_reduce_branches.rs:40:21: 40:48
- }
-
- bb3: {
- StorageDead(_6); // scope 0 at $DIR/matches_reduce_branches.rs:40:47: 40:48
-- switchInt(move _5) -> [false: bb5, otherwise: bb4]; // scope 0 at $DIR/matches_reduce_branches.rs:40:18: 40:68
-+ StorageLive(_8); // scope 0 at $DIR/matches_reduce_branches.rs:40:18: 40:68
-+ _8 = move _5; // scope 0 at $DIR/matches_reduce_branches.rs:40:18: 40:68
-+ _4 = Ne(_8, const false); // scope 0 at $DIR/matches_reduce_branches.rs:40:62: 40:67
-+ StorageDead(_8); // scope 0 at $DIR/matches_reduce_branches.rs:40:18: 40:68
-+ goto -> bb6; // scope 0 at $DIR/matches_reduce_branches.rs:40:18: 40:68
- }
-
- bb4: {
- _4 = const true; // scope 0 at $DIR/matches_reduce_branches.rs:40:50: 40:54
- goto -> bb6; // scope 0 at $DIR/matches_reduce_branches.rs:40:18: 40:68
- }
-
- bb5: {
- _4 = const false; // scope 0 at $DIR/matches_reduce_branches.rs:40:62: 40:67
- goto -> bb6; // scope 0 at $DIR/matches_reduce_branches.rs:40:18: 40:68
- }
-
- bb6: {
- StorageDead(_5); // scope 0 at $DIR/matches_reduce_branches.rs:40:67: 40:68
-- switchInt(move _4) -> [false: bb8, otherwise: bb7]; // scope 0 at $DIR/matches_reduce_branches.rs:40:15: 40:88
-+ StorageLive(_9); // scope 0 at $DIR/matches_reduce_branches.rs:40:15: 40:88
-+ _9 = move _4; // scope 0 at $DIR/matches_reduce_branches.rs:40:15: 40:88
-+ _3 = Ne(_9, const false); // scope 0 at $DIR/matches_reduce_branches.rs:40:82: 40:87
-+ StorageDead(_9); // scope 0 at $DIR/matches_reduce_branches.rs:40:15: 40:88
-+ goto -> bb9; // scope 0 at $DIR/matches_reduce_branches.rs:40:15: 40:88
- }
-
- bb7: {
- _3 = const true; // scope 0 at $DIR/matches_reduce_branches.rs:40:70: 40:74
- goto -> bb9; // scope 0 at $DIR/matches_reduce_branches.rs:40:15: 40:88
- }
-
- bb8: {
- _3 = const false; // scope 0 at $DIR/matches_reduce_branches.rs:40:82: 40:87
- goto -> bb9; // scope 0 at $DIR/matches_reduce_branches.rs:40:15: 40:88
- }
-
- bb9: {
- StorageDead(_4); // scope 0 at $DIR/matches_reduce_branches.rs:40:87: 40:88
-- switchInt(move _3) -> [false: bb11, otherwise: bb10]; // scope 0 at $DIR/matches_reduce_branches.rs:40:15: 40:88
-+ StorageLive(_10); // scope 0 at $DIR/matches_reduce_branches.rs:40:15: 40:88
-+ _10 = move _3; // scope 0 at $DIR/matches_reduce_branches.rs:40:15: 40:88
-+ StorageDead(_3); // scope 0 at $DIR/matches_reduce_branches.rs:40:95: 40:96
-+ _1 = Ne(_10, const false); // scope 0 at $DIR/matches_reduce_branches.rs:41:14: 41:19
-+ StorageDead(_10); // scope 0 at $DIR/matches_reduce_branches.rs:40:15: 40:88
-+ goto -> bb12; // scope 0 at $DIR/matches_reduce_branches.rs:40:15: 40:88
- }
-
- bb10: {
- StorageDead(_3); // scope 0 at $DIR/matches_reduce_branches.rs:40:95: 40:96
- _1 = const true; // scope 0 at $DIR/matches_reduce_branches.rs:40:92: 40:96
- goto -> bb12; // scope 0 at $DIR/matches_reduce_branches.rs:39:15: 42:6
- }
-
- bb11: {
- StorageDead(_3); // scope 0 at $DIR/matches_reduce_branches.rs:40:95: 40:96
- _1 = const false; // scope 0 at $DIR/matches_reduce_branches.rs:41:14: 41:19
- goto -> bb12; // scope 0 at $DIR/matches_reduce_branches.rs:39:15: 42:6
- }
-
- bb12: {
- StorageDead(_2); // scope 0 at $DIR/matches_reduce_branches.rs:42:6: 42:7
- _0 = _1; // scope 1 at $DIR/matches_reduce_branches.rs:43:5: 43:8
- StorageDead(_1); // scope 0 at $DIR/matches_reduce_branches.rs:44:1: 44:2
- return; // scope 0 at $DIR/matches_reduce_branches.rs:44:2: 44:2
+ StorageLive(_1); // scope 0 at $DIR/matches_reduce_branches.rs:40:9: 40:12
+ StorageLive(_2); // scope 0 at $DIR/matches_reduce_branches.rs:40:21: 40:23
+ StorageLive(_3); // scope 0 at $DIR/matches_reduce_branches.rs:41:15: 45:10
+ StorageLive(_4); // scope 0 at $DIR/matches_reduce_branches.rs:41:18: 41:76
+ StorageLive(_5); // scope 0 at $DIR/matches_reduce_branches.rs:41:21: 41:52
+ StorageLive(_6); // scope 0 at $DIR/matches_reduce_branches.rs:41:24: 41:28
+ _6 = const true; // scope 0 at $DIR/matches_reduce_branches.rs:41:24: 41:28
+- switchInt(move _6) -> [false: bb2, otherwise: bb1]; // scope 0 at $DIR/matches_reduce_branches.rs:41:21: 41:52
+- }
+-
+- bb1: {
+- _5 = const true; // scope 0 at $DIR/matches_reduce_branches.rs:41:31: 41:35
+- goto -> bb3; // scope 0 at $DIR/matches_reduce_branches.rs:41:21: 41:52
+- }
+-
+- bb2: {
+- _5 = const false; // scope 0 at $DIR/matches_reduce_branches.rs:41:45: 41:50
+- goto -> bb3; // scope 0 at $DIR/matches_reduce_branches.rs:41:21: 41:52
+- }
+-
+- bb3: {
++ StorageLive(_7); // scope 0 at $DIR/matches_reduce_branches.rs:41:21: 41:52
++ _7 = move _6; // scope 0 at $DIR/matches_reduce_branches.rs:41:21: 41:52
++ _5 = Ne(_7, const false); // scope 0 at $DIR/matches_reduce_branches.rs:41:45: 41:50
++ StorageDead(_7); // scope 0 at $DIR/matches_reduce_branches.rs:41:21: 41:52
+ StorageDead(_6); // scope 0 at $DIR/matches_reduce_branches.rs:41:51: 41:52
+- switchInt(move _5) -> [false: bb5, otherwise: bb4]; // scope 0 at $DIR/matches_reduce_branches.rs:41:18: 41:76
+- }
+-
+- bb4: {
+- _4 = const true; // scope 0 at $DIR/matches_reduce_branches.rs:41:55: 41:59
+- goto -> bb6; // scope 0 at $DIR/matches_reduce_branches.rs:41:18: 41:76
+- }
+-
+- bb5: {
+- _4 = const false; // scope 0 at $DIR/matches_reduce_branches.rs:41:69: 41:74
+- goto -> bb6; // scope 0 at $DIR/matches_reduce_branches.rs:41:18: 41:76
+- }
+-
+- bb6: {
++ StorageLive(_8); // scope 0 at $DIR/matches_reduce_branches.rs:41:18: 41:76
++ _8 = move _5; // scope 0 at $DIR/matches_reduce_branches.rs:41:18: 41:76
++ _4 = Ne(_8, const false); // scope 0 at $DIR/matches_reduce_branches.rs:41:69: 41:74
++ StorageDead(_8); // scope 0 at $DIR/matches_reduce_branches.rs:41:18: 41:76
+ StorageDead(_5); // scope 0 at $DIR/matches_reduce_branches.rs:41:75: 41:76
+- switchInt(move _4) -> [false: bb8, otherwise: bb7]; // scope 0 at $DIR/matches_reduce_branches.rs:41:15: 45:10
+- }
+-
+- bb7: {
+- _3 = const true; // scope 0 at $DIR/matches_reduce_branches.rs:42:13: 42:17
+- goto -> bb9; // scope 0 at $DIR/matches_reduce_branches.rs:41:15: 45:10
+- }
+-
+- bb8: {
+- _3 = const false; // scope 0 at $DIR/matches_reduce_branches.rs:44:13: 44:18
+- goto -> bb9; // scope 0 at $DIR/matches_reduce_branches.rs:41:15: 45:10
+- }
+-
+- bb9: {
++ StorageLive(_9); // scope 0 at $DIR/matches_reduce_branches.rs:41:15: 45:10
++ _9 = move _4; // scope 0 at $DIR/matches_reduce_branches.rs:41:15: 45:10
++ _3 = Ne(_9, const false); // scope 0 at $DIR/matches_reduce_branches.rs:44:13: 44:18
++ StorageDead(_9); // scope 0 at $DIR/matches_reduce_branches.rs:41:15: 45:10
+ StorageDead(_4); // scope 0 at $DIR/matches_reduce_branches.rs:45:9: 45:10
+- switchInt(move _3) -> [false: bb11, otherwise: bb10]; // scope 0 at $DIR/matches_reduce_branches.rs:41:15: 45:10
+- }
+-
+- bb10: {
++ StorageLive(_10); // scope 0 at $DIR/matches_reduce_branches.rs:41:15: 45:10
++ _10 = move _3; // scope 0 at $DIR/matches_reduce_branches.rs:41:15: 45:10
+ StorageDead(_3); // scope 0 at $DIR/matches_reduce_branches.rs:48:9: 48:10
+- _1 = const true; // scope 0 at $DIR/matches_reduce_branches.rs:47:13: 47:17
+- goto -> bb12; // scope 0 at $DIR/matches_reduce_branches.rs:40:15: 50:6
+- }
+-
+- bb11: {
+- StorageDead(_3); // scope 0 at $DIR/matches_reduce_branches.rs:48:9: 48:10
+- _1 = const false; // scope 0 at $DIR/matches_reduce_branches.rs:49:14: 49:19
+- goto -> bb12; // scope 0 at $DIR/matches_reduce_branches.rs:40:15: 50:6
+- }
+-
+- bb12: {
++ _1 = Ne(_10, const false); // scope 0 at $DIR/matches_reduce_branches.rs:49:14: 49:19
++ StorageDead(_10); // scope 0 at $DIR/matches_reduce_branches.rs:41:15: 45:10
+ StorageDead(_2); // scope 0 at $DIR/matches_reduce_branches.rs:50:6: 50:7
+ _0 = _1; // scope 1 at $DIR/matches_reduce_branches.rs:51:5: 51:8
+ StorageDead(_1); // scope 0 at $DIR/matches_reduce_branches.rs:52:1: 52:2
+ return; // scope 0 at $DIR/matches_reduce_branches.rs:52:2: 52:2
}
}