mirror of
https://github.com/rust-lang/rust.git
synced 2024-11-27 01:04:03 +00:00
104 lines
5.7 KiB
Diff
104 lines
5.7 KiB
Diff
- // MIR for `match_nested_if` before ConstGoto
|
|
+ // MIR for `match_nested_if` after ConstGoto
|
|
|
|
fn match_nested_if() -> bool {
|
|
let mut _0: bool; // return place in scope 0 at $DIR/const_goto_storage.rs:+0:25: +0:29
|
|
let _1: bool; // in scope 0 at $DIR/const_goto_storage.rs:+1:9: +1:12
|
|
- let mut _2: (); // in scope 0 at $DIR/const_goto_storage.rs:+1:21: +1:23
|
|
- let mut _3: bool; // in scope 0 at $DIR/const_goto_storage.rs:+2:15: +6:10
|
|
- let mut _4: bool; // in scope 0 at $DIR/const_goto_storage.rs:+2:18: +2:76
|
|
- let mut _5: bool; // in scope 0 at $DIR/const_goto_storage.rs:+2:21: +2:52
|
|
- let mut _6: bool; // in scope 0 at $DIR/const_goto_storage.rs:+2:24: +2:28
|
|
+ let mut _2: bool; // in scope 0 at $DIR/const_goto_storage.rs:+2:24: +2:28
|
|
scope 1 {
|
|
debug val => _1; // in scope 1 at $DIR/const_goto_storage.rs:+1:9: +1:12
|
|
}
|
|
|
|
bb0: {
|
|
StorageLive(_1); // scope 0 at $DIR/const_goto_storage.rs:+1:9: +1:12
|
|
- StorageLive(_2); // scope 0 at $DIR/const_goto_storage.rs:+1:21: +1:23
|
|
- _2 = (); // scope 0 at $DIR/const_goto_storage.rs:+1:21: +1:23
|
|
- StorageLive(_3); // scope 0 at $DIR/const_goto_storage.rs:+2:15: +6:10
|
|
- StorageLive(_4); // scope 0 at $DIR/const_goto_storage.rs:+2:18: +2:76
|
|
- StorageLive(_5); // scope 0 at $DIR/const_goto_storage.rs:+2:21: +2:52
|
|
- StorageLive(_6); // scope 0 at $DIR/const_goto_storage.rs:+2:24: +2:28
|
|
- _6 = const true; // scope 0 at $DIR/const_goto_storage.rs:+2:24: +2:28
|
|
- switchInt(move _6) -> [0: bb2, otherwise: bb1]; // scope 0 at $DIR/const_goto_storage.rs:+2:24: +2:28
|
|
+ StorageLive(_2); // scope 0 at $DIR/const_goto_storage.rs:+2:24: +2:28
|
|
+ _2 = const true; // scope 0 at $DIR/const_goto_storage.rs:+2:24: +2:28
|
|
+ switchInt(move _2) -> [0: bb2, otherwise: bb1]; // scope 0 at $DIR/const_goto_storage.rs:+2:24: +2:28
|
|
}
|
|
|
|
bb1: {
|
|
- _5 = const true; // scope 0 at $DIR/const_goto_storage.rs:+2:31: +2:35
|
|
- goto -> bb3; // scope 0 at $DIR/const_goto_storage.rs:+2:21: +2:52
|
|
- }
|
|
-
|
|
- bb2: {
|
|
- _5 = const false; // scope 0 at $DIR/const_goto_storage.rs:+2:45: +2:50
|
|
- goto -> bb3; // scope 0 at $DIR/const_goto_storage.rs:+2:21: +2:52
|
|
- }
|
|
-
|
|
- bb3: {
|
|
- StorageDead(_6); // scope 0 at $DIR/const_goto_storage.rs:+2:51: +2:52
|
|
- switchInt(move _5) -> [0: bb5, otherwise: bb4]; // scope 0 at $DIR/const_goto_storage.rs:+2:21: +2:52
|
|
- }
|
|
-
|
|
- bb4: {
|
|
- _4 = const true; // scope 0 at $DIR/const_goto_storage.rs:+2:55: +2:59
|
|
- goto -> bb6; // scope 0 at $DIR/const_goto_storage.rs:+2:18: +2:76
|
|
- }
|
|
-
|
|
- bb5: {
|
|
- _4 = const false; // scope 0 at $DIR/const_goto_storage.rs:+2:69: +2:74
|
|
- goto -> bb6; // scope 0 at $DIR/const_goto_storage.rs:+2:18: +2:76
|
|
- }
|
|
-
|
|
- bb6: {
|
|
- StorageDead(_5); // scope 0 at $DIR/const_goto_storage.rs:+2:75: +2:76
|
|
- switchInt(move _4) -> [0: bb8, otherwise: bb7]; // scope 0 at $DIR/const_goto_storage.rs:+2:18: +2:76
|
|
- }
|
|
-
|
|
- bb7: {
|
|
- _3 = const true; // scope 0 at $DIR/const_goto_storage.rs:+3:13: +3:17
|
|
- goto -> bb9; // scope 0 at $DIR/const_goto_storage.rs:+2:15: +6:10
|
|
- }
|
|
-
|
|
- bb8: {
|
|
- _3 = const false; // scope 0 at $DIR/const_goto_storage.rs:+5:13: +5:18
|
|
- goto -> bb9; // scope 0 at $DIR/const_goto_storage.rs:+2:15: +6:10
|
|
- }
|
|
-
|
|
- bb9: {
|
|
- switchInt(move _3) -> [0: bb11, otherwise: bb10]; // scope 0 at $DIR/const_goto_storage.rs:+2:15: +6:10
|
|
- }
|
|
-
|
|
- bb10: {
|
|
- StorageDead(_4); // scope 0 at $DIR/const_goto_storage.rs:+6:9: +6:10
|
|
- StorageDead(_3); // scope 0 at $DIR/const_goto_storage.rs:+6:9: +6:10
|
|
+ StorageDead(_2); // scope 0 at $DIR/const_goto_storage.rs:+2:51: +2:52
|
|
_1 = const true; // scope 0 at $DIR/const_goto_storage.rs:+8:17: +8:21
|
|
- goto -> bb12; // scope 0 at $DIR/const_goto_storage.rs:+8:17: +8:21
|
|
+ goto -> bb3; // scope 0 at $DIR/const_goto_storage.rs:+8:17: +8:21
|
|
}
|
|
|
|
- bb11: {
|
|
- StorageDead(_4); // scope 0 at $DIR/const_goto_storage.rs:+6:9: +6:10
|
|
- StorageDead(_3); // scope 0 at $DIR/const_goto_storage.rs:+6:9: +6:10
|
|
+ bb2: {
|
|
+ StorageDead(_2); // scope 0 at $DIR/const_goto_storage.rs:+2:51: +2:52
|
|
_1 = const false; // scope 0 at $DIR/const_goto_storage.rs:+10:14: +10:19
|
|
- goto -> bb12; // scope 0 at $DIR/const_goto_storage.rs:+10:14: +10:19
|
|
+ goto -> bb3; // scope 0 at $DIR/const_goto_storage.rs:+10:14: +10:19
|
|
}
|
|
|
|
- bb12: {
|
|
- StorageDead(_2); // scope 0 at $DIR/const_goto_storage.rs:+11:6: +11:7
|
|
+ bb3: {
|
|
_0 = _1; // scope 1 at $DIR/const_goto_storage.rs:+12:5: +12:8
|
|
StorageDead(_1); // scope 0 at $DIR/const_goto_storage.rs:+13:1: +13:2
|
|
return; // scope 0 at $DIR/const_goto_storage.rs:+13:2: +13:2
|
|
}
|
|
}
|
|
|