Created
June 2, 2016 22:20
-
-
Save scottcarr/e6a2cf6541c99021aa2cd5ca12403f0c to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// MIR for `main` | |
// node_id = 4 | |
// pass_name = eliminate_moves | |
// disambiguator = 0 | |
fn main() -> () { | |
let mut var0: i32; // "x" in scope 3 at main.rs:2:9: 2:14 | |
let mut var1: i32; // "y" in scope 6 at main.rs:3:9: 3:14 | |
let var2: &mut i32; // "p" in scope 12 at main.rs:5:13: 5:14 | |
let var3: &i32; // "__arg0" in scope 42 at main.rs:1:1: 1:1 | |
let var4: &i32; // "__arg0" in scope 61 at main.rs:1:1: 1:1 | |
let mut tmp0: (); | |
let mut tmp1: i32; | |
let mut tmp2: i32; | |
let mut tmp3: (); | |
let mut tmp4: std::fmt::Arguments<'_>; | |
let mut tmp5: &[&str]; | |
let mut tmp6: &[std::fmt::ArgumentV1<'_>]; | |
let mut tmp7: &[std::fmt::ArgumentV1<'_>; 1]; | |
let mut tmp8: &[std::fmt::ArgumentV1<'_>; 1]; | |
let mut tmp9: [std::fmt::ArgumentV1<'_>; 1]; | |
let mut tmp10: (&i32,); | |
let mut tmp11: &i32; | |
let mut tmp12: std::fmt::ArgumentV1<'_>; | |
let mut tmp13: &i32; | |
let mut tmp14: fn(&i32, &mut std::fmt::Formatter<'_>) -> std::result::Result<(), std::fmt::Error>; | |
let mut tmp15: (); | |
let mut tmp16: std::fmt::Arguments<'_>; | |
let mut tmp17: &[&str]; | |
let mut tmp18: &[std::fmt::ArgumentV1<'_>]; | |
let mut tmp19: &[std::fmt::ArgumentV1<'_>; 1]; | |
let mut tmp20: &[std::fmt::ArgumentV1<'_>; 1]; | |
let mut tmp21: [std::fmt::ArgumentV1<'_>; 1]; | |
let mut tmp22: (&i32,); | |
let mut tmp23: &i32; | |
let mut tmp24: std::fmt::ArgumentV1<'_>; | |
let mut tmp25: &i32; | |
let mut tmp26: fn(&i32, &mut std::fmt::Formatter<'_>) -> std::result::Result<(), std::fmt::Error>; | |
bb0: { | |
var0 = const 0i32; // scope 5 at main.rs:2:17: 2:18 | |
var1 = const 0i32; // scope 8 at main.rs:3:17: 3:18 | |
var2 = &mut var1; // scope 14 at main.rs:5:17: 5:23 | |
tmp1 = var0; // scope 19 at main.rs:6:13: 6:14 | |
(*var2) = const 22i32; // scope 23 at main.rs:6:18: 6:25 | |
tmp2 = const 3i32; // scope 27 at main.rs:6:27: 6:28 | |
var0 = Add(tmp1, tmp2); // scope 17 at main.rs:6:9: 6:30 | |
tmp0 = (); // scope 12 at main.rs:4:5: 7:6 | |
tmp5 = &(*main::__STATIC_FMTSTR); // scope 36 at main.rs:8:5: 8:26 | |
tmp11 = &var0; // scope 40 at main.rs:8:23: 8:24 | |
tmp10 = (tmp11,); // scope 39 at main.rs:8:5: 8:26 | |
var3 = (tmp10.0: &i32); // scope 38 at main.rs:1:1: 1:1 | |
tmp13 = &(*var3); // scope 46 at main.rs:8:23: 8:24 | |
tmp14 = <i32 as std::fmt::Display>::fmt as fn(&i32, &mut std::fmt::Formatter<'_>) -> std::result::Result<(), std::fmt::Error> (ReifyFnPointer); // scope 47 at main.rs:8:23: 8:24 | |
tmp12 = std::fmt::ArgumentV1<'_>::new::<i32>(tmp13, tmp14) -> bb1; // scope 44 at <std macros>:2:27: 2:58 | |
} | |
bb1: { | |
tmp9 = [tmp12]; // scope 43 at main.rs:8:5: 8:26 | |
tmp8 = &tmp9; // scope 37 at main.rs:8:5: 8:26 | |
tmp7 = &(*tmp8); // scope 37 at main.rs:8:5: 8:26 | |
tmp6 = tmp7 as &[std::fmt::ArgumentV1<'_>] (Unsize); // scope 37 at main.rs:8:5: 8:26 | |
tmp4 = std::fmt::Arguments<'_>::new_v1(tmp5, tmp6) -> bb2; // scope 32 at <std macros>:2:27: 2:58 | |
} | |
bb2: { | |
tmp3 = std::io::_print(tmp4) -> bb3; // scope 30 at <std macros>:2:1: 2:60 | |
} | |
bb3: { | |
tmp17 = &(*main::__STATIC_FMTSTR); // scope 55 at main.rs:9:5: 9:26 | |
tmp23 = &var1; // scope 59 at main.rs:9:23: 9:24 | |
tmp22 = (tmp23,); // scope 58 at main.rs:9:5: 9:26 | |
var4 = (tmp22.0: &i32); // scope 57 at main.rs:1:1: 1:1 | |
tmp25 = &(*var4); // scope 65 at main.rs:9:23: 9:24 | |
tmp26 = <i32 as std::fmt::Display>::fmt as fn(&i32, &mut std::fmt::Formatter<'_>) -> std::result::Result<(), std::fmt::Error> (ReifyFnPointer); // scope 66 at main.rs:9:23: 9:24 | |
tmp24 = std::fmt::ArgumentV1<'_>::new::<i32>(tmp25, tmp26) -> bb4; // scope 63 at <std macros>:2:27: 2:58 | |
} | |
bb4: { | |
tmp21 = [tmp24]; // scope 62 at main.rs:9:5: 9:26 | |
tmp20 = &tmp21; // scope 56 at main.rs:9:5: 9:26 | |
tmp19 = &(*tmp20); // scope 56 at main.rs:9:5: 9:26 | |
tmp18 = tmp19 as &[std::fmt::ArgumentV1<'_>] (Unsize); // scope 56 at main.rs:9:5: 9:26 | |
tmp16 = std::fmt::Arguments<'_>::new_v1(tmp17, tmp18) -> bb5; // scope 51 at <std macros>:2:27: 2:58 | |
} | |
bb5: { | |
tmp15 = std::io::_print(tmp16) -> bb6; // scope 49 at <std macros>:2:1: 2:60 | |
} | |
bb6: { | |
return = (); // scope 6 at main.rs:1:11: 10:2 | |
return; // scope 0 at main.rs:1:1: 10:2 | |
} | |
scope tree: | |
0 1 2 3 { | |
4 5 | |
6 { | |
7 8 | |
9 10 11 12 { | |
13 14 15 | |
16 17 { | |
18 { | |
19 | |
20 21 { | |
22 23 { | |
24 | |
25 26 | |
} | |
27 | |
} | |
} | |
28 | |
} | |
} | |
29 30 { | |
31 | |
32 { | |
33 | |
34 35 36 | |
37 38 { | |
39 40 41 | |
42 43 44 { | |
45 | |
46 | |
47 | |
} | |
} | |
} | |
} | |
48 49 { | |
50 | |
51 { | |
52 | |
53 54 55 | |
56 57 { | |
58 59 60 | |
61 62 63 { | |
64 | |
65 | |
66 | |
} | |
} | |
} | |
} | |
} | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment