]>
git.proxmox.com Git - rustc.git/blob - src/test/mir-opt/simplify_try.rs
1 fn try_identity(x
: Result
<u32, i32>) -> Result
<u32, i32> {
7 let _
= try_identity(Ok(0));
11 // START rustc.try_identity.SimplifyArmIdentity.before.mir
12 // fn try_identity(_1: std::result::Result<u32, i32>) -> std::result::Result<u32, i32> {
14 // let mut _0: std::result::Result<u32, i32>;
16 // let mut _3: std::result::Result<u32, i32>;
17 // let mut _4: std::result::Result<u32, i32>;
49 // _5 = discriminant(_1);
50 // switchInt(move _5) -> [0isize: bb4, 1isize: bb2, otherwise: bb1];
56 // _6 = ((_1 as Err).0: i32);
57 // ((_0 as Err).0: i32) = move _6;
58 // discriminant(_0) = 1;
65 // _10 = ((_1 as Ok).0: u32);
66 // ((_0 as Ok).0: u32) = move _10;
67 // discriminant(_0) = 0;
71 // END rustc.try_identity.SimplifyArmIdentity.before.mir
73 // START rustc.try_identity.SimplifyArmIdentity.after.mir
74 // fn try_identity(_1: std::result::Result<u32, i32>) -> std::result::Result<u32, i32> {
76 // let mut _0: std::result::Result<u32, i32>;
78 // let mut _3: std::result::Result<u32, i32>;
79 // let mut _4: std::result::Result<u32, i32>;
111 // _5 = discriminant(_1);
112 // switchInt(move _5) -> [0isize: bb4, 1isize: bb2, otherwise: bb1];
133 // END rustc.try_identity.SimplifyArmIdentity.after.mir
135 // START rustc.try_identity.SimplifyBranchSame.after.mir
136 // fn try_identity(_1: std::result::Result<u32, i32>) -> std::result::Result<u32, i32> {
138 // let mut _0: std::result::Result<u32, i32>;
140 // let mut _3: std::result::Result<u32, i32>;
141 // let mut _4: std::result::Result<u32, i32>;
142 // let mut _5: isize;
173 // _5 = discriminant(_1);
186 // END rustc.try_identity.SimplifyBranchSame.after.mir
188 // START rustc.try_identity.SimplifyLocals.after.mir
189 // fn try_identity(_1: std::result::Result<u32, i32>) -> std::result::Result<u32, i32> {
191 // let mut _0: std::result::Result<u32, i32>;
192 // let mut _2: isize;
218 // _2 = discriminant(_1);
223 // END rustc.try_identity.SimplifyLocals.after.mir