]> git.proxmox.com Git - rustc.git/blob - src/test/mir-opt/simplify_try.try_identity.SimplifyBranchSame.after.mir
New upstream version 1.62.1+dfsg1
[rustc.git] / src / test / mir-opt / simplify_try.try_identity.SimplifyBranchSame.after.mir
1 // MIR for `try_identity` after SimplifyBranchSame
2
3 fn try_identity(_1: Result<u32, i32>) -> Result<u32, i32> {
4 debug x => _1; // in scope 0 at $DIR/simplify_try.rs:20:17: 20:18
5 let mut _0: std::result::Result<u32, i32>; // return place in scope 0 at $DIR/simplify_try.rs:20:41: 20:57
6 let _2: u32; // in scope 0 at $DIR/simplify_try.rs:21:9: 21:10
7 let mut _3: std::result::Result<u32, i32>; // in scope 0 at $DIR/simplify_try.rs:21:19: 21:33
8 let mut _4: std::result::Result<u32, i32>; // in scope 0 at $DIR/simplify_try.rs:21:31: 21:32
9 let mut _5: isize; // in scope 0 at $DIR/simplify_try.rs:22:9: 22:15
10 let _6: i32; // in scope 0 at $DIR/simplify_try.rs:22:13: 22:14
11 let mut _7: !; // in scope 0 at $DIR/simplify_try.rs:22:19: 22:51
12 let mut _8: i32; // in scope 0 at $DIR/simplify_try.rs:22:37: 22:50
13 let mut _9: i32; // in scope 0 at $DIR/simplify_try.rs:22:48: 22:49
14 let _10: u32; // in scope 0 at $DIR/simplify_try.rs:23:12: 23:13
15 let mut _11: u32; // in scope 0 at $DIR/simplify_try.rs:25:8: 25:9
16 scope 1 {
17 debug y => _2; // in scope 1 at $DIR/simplify_try.rs:21:9: 21:10
18 }
19 scope 2 {
20 debug e => _6; // in scope 2 at $DIR/simplify_try.rs:22:13: 22:14
21 scope 5 (inlined <i32 as From<i32>>::from) { // at $DIR/simplify_try.rs:22:37: 22:50
22 debug t => _9; // in scope 5 at $SRC_DIR/core/src/convert/mod.rs:LL:COL
23 }
24 scope 6 (inlined from_error::<u32, i32>) { // at $DIR/simplify_try.rs:22:26: 22:51
25 debug e => _8; // in scope 6 at $DIR/simplify_try.rs:12:21: 12:22
26 }
27 }
28 scope 3 {
29 debug v => _10; // in scope 3 at $DIR/simplify_try.rs:23:12: 23:13
30 }
31 scope 4 (inlined into_result::<u32, i32>) { // at $DIR/simplify_try.rs:21:19: 21:33
32 debug r => _4; // in scope 4 at $DIR/simplify_try.rs:8:22: 8:23
33 }
34
35 bb0: {
36 StorageLive(_2); // scope 0 at $DIR/simplify_try.rs:21:9: 21:10
37 StorageLive(_3); // scope 0 at $DIR/simplify_try.rs:21:19: 21:33
38 StorageLive(_4); // scope 0 at $DIR/simplify_try.rs:21:31: 21:32
39 _4 = _1; // scope 0 at $DIR/simplify_try.rs:21:31: 21:32
40 _3 = move _4; // scope 4 at $DIR/simplify_try.rs:9:5: 9:6
41 StorageDead(_4); // scope 0 at $DIR/simplify_try.rs:21:32: 21:33
42 _5 = discriminant(_3); // scope 0 at $DIR/simplify_try.rs:21:19: 21:33
43 switchInt(move _5) -> [0_isize: bb1, otherwise: bb2]; // scope 0 at $DIR/simplify_try.rs:21:13: 21:33
44 }
45
46 bb1: {
47 StorageLive(_10); // scope 0 at $DIR/simplify_try.rs:23:12: 23:13
48 _10 = ((_3 as Ok).0: u32); // scope 0 at $DIR/simplify_try.rs:23:12: 23:13
49 _2 = _10; // scope 3 at $DIR/simplify_try.rs:23:18: 23:19
50 StorageDead(_10); // scope 0 at $DIR/simplify_try.rs:23:18: 23:19
51 StorageDead(_3); // scope 0 at $DIR/simplify_try.rs:24:6: 24:7
52 StorageLive(_11); // scope 1 at $DIR/simplify_try.rs:25:8: 25:9
53 _11 = _2; // scope 1 at $DIR/simplify_try.rs:25:8: 25:9
54 Deinit(_0); // scope 1 at $DIR/simplify_try.rs:25:5: 25:10
55 ((_0 as Ok).0: u32) = move _11; // scope 1 at $DIR/simplify_try.rs:25:5: 25:10
56 discriminant(_0) = 0; // scope 1 at $DIR/simplify_try.rs:25:5: 25:10
57 StorageDead(_11); // scope 1 at $DIR/simplify_try.rs:25:9: 25:10
58 StorageDead(_2); // scope 0 at $DIR/simplify_try.rs:26:1: 26:2
59 return; // scope 0 at $DIR/simplify_try.rs:26:2: 26:2
60 }
61
62 bb2: {
63 StorageLive(_6); // scope 0 at $DIR/simplify_try.rs:22:13: 22:14
64 _6 = ((_3 as Err).0: i32); // scope 0 at $DIR/simplify_try.rs:22:13: 22:14
65 StorageLive(_8); // scope 2 at $DIR/simplify_try.rs:22:37: 22:50
66 StorageLive(_9); // scope 2 at $DIR/simplify_try.rs:22:48: 22:49
67 _9 = _6; // scope 2 at $DIR/simplify_try.rs:22:48: 22:49
68 _8 = move _9; // scope 5 at $SRC_DIR/core/src/convert/mod.rs:LL:COL
69 StorageDead(_9); // scope 2 at $DIR/simplify_try.rs:22:49: 22:50
70 ((_0 as Err).0: i32) = move _8; // scope 6 at $DIR/simplify_try.rs:13:9: 13:10
71 Deinit(_0); // scope 6 at $DIR/simplify_try.rs:13:5: 13:11
72 discriminant(_0) = 1; // scope 6 at $DIR/simplify_try.rs:13:5: 13:11
73 StorageDead(_8); // scope 2 at $DIR/simplify_try.rs:22:50: 22:51
74 StorageDead(_6); // scope 0 at $DIR/simplify_try.rs:22:50: 22:51
75 StorageDead(_3); // scope 0 at $DIR/simplify_try.rs:24:6: 24:7
76 StorageDead(_2); // scope 0 at $DIR/simplify_try.rs:26:1: 26:2
77 return; // scope 0 at $DIR/simplify_try.rs:26:2: 26:2
78 }
79 }