]> git.lizzy.rs Git - rust.git/blob - tests/mir-opt/simplify_arm.id_try.SimplifyArmIdentity.diff
Rollup merge of #107596 - Kobzol:stage-build-timer, r=Mark-Simulacrum
[rust.git] / tests / mir-opt / simplify_arm.id_try.SimplifyArmIdentity.diff
1 - // MIR for `id_try` before SimplifyArmIdentity
2 + // MIR for `id_try` after SimplifyArmIdentity
3   
4   fn id_try(_1: Result<u8, i32>) -> Result<u8, i32> {
5       debug r => _1;                       // in scope 0 at $DIR/simplify-arm.rs:+0:11: +0:12
6       let mut _0: std::result::Result<u8, i32>; // return place in scope 0 at $DIR/simplify-arm.rs:+0:34: +0:49
7       let _2: u8;                          // in scope 0 at $DIR/simplify-arm.rs:+1:9: +1:10
8       let mut _3: std::result::Result<u8, i32>; // in scope 0 at $DIR/simplify-arm.rs:+1:19: +1:33
9       let mut _4: std::result::Result<u8, i32>; // in scope 0 at $DIR/simplify-arm.rs:+1:31: +1:32
10       let mut _5: isize;                   // in scope 0 at $DIR/simplify-arm.rs:+2:9: +2:15
11       let _6: i32;                         // in scope 0 at $DIR/simplify-arm.rs:+2:13: +2:14
12       let mut _7: !;                       // in scope 0 at $DIR/simplify-arm.rs:+2:19: +2:51
13       let mut _8: i32;                     // in scope 0 at $DIR/simplify-arm.rs:+2:37: +2:50
14       let mut _9: i32;                     // in scope 0 at $DIR/simplify-arm.rs:+2:48: +2:49
15       let _10: u8;                         // in scope 0 at $DIR/simplify-arm.rs:+3:12: +3:13
16       let mut _11: u8;                     // in scope 0 at $DIR/simplify-arm.rs:+5:8: +5:9
17       scope 1 {
18           debug x => _2;                   // in scope 1 at $DIR/simplify-arm.rs:+1:9: +1:10
19       }
20       scope 2 {
21           debug e => _6;                   // in scope 2 at $DIR/simplify-arm.rs:+2:13: +2:14
22           scope 5 (inlined <i32 as From<i32>>::from) { // at $DIR/simplify-arm.rs:37:37: 37:50
23               debug t => _9;               // in scope 5 at $SRC_DIR/core/src/convert/mod.rs:LL:COL
24           }
25           scope 6 (inlined from_error::<u8, i32>) { // at $DIR/simplify-arm.rs:37:26: 37:51
26               debug e => _8;               // in scope 6 at $DIR/simplify-arm.rs:27:21: 27:22
27           }
28       }
29       scope 3 {
30           debug v => _10;                  // in scope 3 at $DIR/simplify-arm.rs:+3:12: +3:13
31       }
32       scope 4 (inlined into_result::<u8, i32>) { // at $DIR/simplify-arm.rs:36:19: 36:33
33           debug r => _4;                   // in scope 4 at $DIR/simplify-arm.rs:23:22: 23:23
34       }
35   
36       bb0: {
37           StorageLive(_2);                 // scope 0 at $DIR/simplify-arm.rs:+1:9: +1:10
38           StorageLive(_3);                 // scope 0 at $DIR/simplify-arm.rs:+1:19: +1:33
39           StorageLive(_4);                 // scope 0 at $DIR/simplify-arm.rs:+1:31: +1:32
40           _4 = _1;                         // scope 0 at $DIR/simplify-arm.rs:+1:31: +1:32
41           _3 = move _4;                    // scope 4 at $DIR/simplify-arm.rs:24:5: 24:6
42           StorageDead(_4);                 // scope 0 at $DIR/simplify-arm.rs:+1:32: +1:33
43           _5 = discriminant(_3);           // scope 0 at $DIR/simplify-arm.rs:+1:19: +1:33
44           switchInt(move _5) -> [0_isize: bb1, 1_isize: bb3, otherwise: bb2]; // scope 0 at $DIR/simplify-arm.rs:+1:13: +1:33
45       }
46   
47       bb1: {
48           StorageLive(_10);                // scope 0 at $DIR/simplify-arm.rs:+3:12: +3:13
49           _10 = ((_3 as Ok).0: u8);        // scope 0 at $DIR/simplify-arm.rs:+3:12: +3:13
50           _2 = _10;                        // scope 3 at $DIR/simplify-arm.rs:+3:18: +3:19
51           StorageDead(_10);                // scope 0 at $DIR/simplify-arm.rs:+3:18: +3:19
52           StorageDead(_3);                 // scope 0 at $DIR/simplify-arm.rs:+4:6: +4:7
53           StorageLive(_11);                // scope 1 at $DIR/simplify-arm.rs:+5:8: +5:9
54           _11 = _2;                        // scope 1 at $DIR/simplify-arm.rs:+5:8: +5:9
55           Deinit(_0);                      // scope 1 at $DIR/simplify-arm.rs:+5:5: +5:10
56           ((_0 as Ok).0: u8) = move _11;   // scope 1 at $DIR/simplify-arm.rs:+5:5: +5:10
57           discriminant(_0) = 0;            // scope 1 at $DIR/simplify-arm.rs:+5:5: +5:10
58           StorageDead(_11);                // scope 1 at $DIR/simplify-arm.rs:+5:9: +5:10
59           StorageDead(_2);                 // scope 0 at $DIR/simplify-arm.rs:+6:1: +6:2
60           goto -> bb4;                     // scope 0 at $DIR/simplify-arm.rs:+6:2: +6:2
61       }
62   
63       bb2: {
64           unreachable;                     // scope 0 at $DIR/simplify-arm.rs:+1:19: +1:33
65       }
66   
67       bb3: {
68           StorageLive(_6);                 // scope 0 at $DIR/simplify-arm.rs:+2:13: +2:14
69           _6 = ((_3 as Err).0: i32);       // scope 0 at $DIR/simplify-arm.rs:+2:13: +2:14
70           StorageLive(_8);                 // scope 2 at $DIR/simplify-arm.rs:+2:37: +2:50
71           StorageLive(_9);                 // scope 2 at $DIR/simplify-arm.rs:+2:48: +2:49
72           _9 = _6;                         // scope 2 at $DIR/simplify-arm.rs:+2:48: +2:49
73           _8 = move _9;                    // scope 5 at $SRC_DIR/core/src/convert/mod.rs:LL:COL
74           StorageDead(_9);                 // scope 2 at $DIR/simplify-arm.rs:+2:49: +2:50
75           ((_0 as Err).0: i32) = move _8;  // scope 6 at $DIR/simplify-arm.rs:28:9: 28:10
76           Deinit(_0);                      // scope 6 at $DIR/simplify-arm.rs:28:5: 28:11
77           discriminant(_0) = 1;            // scope 6 at $DIR/simplify-arm.rs:28:5: 28:11
78           StorageDead(_8);                 // scope 2 at $DIR/simplify-arm.rs:+2:50: +2:51
79           StorageDead(_6);                 // scope 0 at $DIR/simplify-arm.rs:+2:50: +2:51
80           StorageDead(_3);                 // scope 0 at $DIR/simplify-arm.rs:+4:6: +4:7
81           StorageDead(_2);                 // scope 0 at $DIR/simplify-arm.rs:+6:1: +6:2
82           goto -> bb4;                     // scope 0 at $DIR/simplify-arm.rs:+6:2: +6:2
83       }
84   
85       bb4: {
86           return;                          // scope 0 at $DIR/simplify-arm.rs:+6:2: +6:2
87       }
88   }
89