]> git.proxmox.com Git - rustc.git/blob - tests/mir-opt/const_prop/boxes.main.ConstProp.diff
b0e86e7537f13ddd9f274d038beeaf9d7cb07c8b
[rustc.git] / tests / mir-opt / const_prop / boxes.main.ConstProp.diff
1 - // MIR for `main` before ConstProp
2 + // MIR for `main` after ConstProp
3
4 fn main() -> () {
5 let mut _0: (); // return place in scope 0 at $DIR/boxes.rs:+0:11: +0:11
6 let _1: i32; // in scope 0 at $DIR/boxes.rs:+1:9: +1:10
7 let mut _2: i32; // in scope 0 at $DIR/boxes.rs:+1:13: +2:18
8 let mut _3: std::boxed::Box<i32>; // in scope 0 at $DIR/boxes.rs:+1:14: +2:18
9 let mut _4: usize; // in scope 0 at $DIR/boxes.rs:+1:14: +2:18
10 let mut _5: usize; // in scope 0 at $DIR/boxes.rs:+1:14: +2:18
11 let mut _6: *mut u8; // in scope 0 at $DIR/boxes.rs:+1:14: +2:18
12 let mut _7: std::boxed::Box<i32>; // in scope 0 at $DIR/boxes.rs:+1:14: +2:18
13 let mut _8: *const i32; // in scope 0 at $DIR/boxes.rs:+1:14: +2:18
14 let mut _9: *const i32; // in scope 0 at $DIR/boxes.rs:+1:14: +2:18
15 scope 1 {
16 debug x => _1; // in scope 1 at $DIR/boxes.rs:+1:9: +1:10
17 }
18 scope 2 {
19 }
20
21 bb0: {
22 StorageLive(_1); // scope 0 at $DIR/boxes.rs:+1:9: +1:10
23 StorageLive(_2); // scope 0 at $DIR/boxes.rs:+1:13: +2:18
24 StorageLive(_3); // scope 0 at $DIR/boxes.rs:+1:14: +2:18
25 - _4 = SizeOf(i32); // scope 2 at $DIR/boxes.rs:+1:14: +2:18
26 - _5 = AlignOf(i32); // scope 2 at $DIR/boxes.rs:+1:14: +2:18
27 + _4 = const 4_usize; // scope 2 at $DIR/boxes.rs:+1:14: +2:18
28 + _5 = const 4_usize; // scope 2 at $DIR/boxes.rs:+1:14: +2:18
29 _6 = alloc::alloc::exchange_malloc(move _4, move _5) -> bb1; // scope 2 at $DIR/boxes.rs:+1:14: +2:18
30 // mir::Constant
31 // + span: $DIR/boxes.rs:13:14: 14:18
32 // + literal: Const { ty: unsafe fn(usize, usize) -> *mut u8 {alloc::alloc::exchange_malloc}, val: Value(<ZST>) }
33 }
34
35 bb1: {
36 StorageLive(_7); // scope 0 at $DIR/boxes.rs:+1:14: +2:18
37 _7 = ShallowInitBox(move _6, i32); // scope 0 at $DIR/boxes.rs:+1:14: +2:18
38 _8 = (((_7.0: std::ptr::Unique<i32>).0: std::ptr::NonNull<i32>).0: *const i32); // scope 0 at $DIR/boxes.rs:+2:14: +2:16
39 (*_8) = const 42_i32; // scope 0 at $DIR/boxes.rs:+2:14: +2:16
40 _3 = move _7; // scope 0 at $DIR/boxes.rs:+1:14: +2:18
41 StorageDead(_7); // scope 0 at $DIR/boxes.rs:+2:17: +2:18
42 _9 = (((_3.0: std::ptr::Unique<i32>).0: std::ptr::NonNull<i32>).0: *const i32); // scope 0 at $DIR/boxes.rs:+1:13: +2:18
43 _2 = (*_9); // scope 0 at $DIR/boxes.rs:+1:13: +2:18
44 _1 = Add(move _2, const 0_i32); // scope 0 at $DIR/boxes.rs:+1:13: +3:12
45 StorageDead(_2); // scope 0 at $DIR/boxes.rs:+3:11: +3:12
46 drop(_3) -> [return: bb2, unwind: bb3]; // scope 0 at $DIR/boxes.rs:+3:12: +3:13
47 }
48
49 bb2: {
50 StorageDead(_3); // scope 0 at $DIR/boxes.rs:+3:12: +3:13
51 _0 = const (); // scope 0 at $DIR/boxes.rs:+0:11: +4:2
52 StorageDead(_1); // scope 0 at $DIR/boxes.rs:+4:1: +4:2
53 return; // scope 0 at $DIR/boxes.rs:+4:2: +4:2
54 }
55
56 bb3 (cleanup): {
57 resume; // scope 0 at $DIR/boxes.rs:+0:1: +4:2
58 }
59 }
60