]> git.lizzy.rs Git - rust.git/blob - tests/mir-opt/const_prop/boxes.main.ConstProp.diff
Rollup merge of #107770 - notriddle:notriddle/br2nl, r=GuillaumeGomez
[rust.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: +1:22
8       let mut _3: std::boxed::Box<i32>;    // in scope 0 at $DIR/boxes.rs:+1:14: +1:22
9       let mut _4: usize;                   // in scope 0 at $DIR/boxes.rs:+1:14: +1:22
10       let mut _5: usize;                   // in scope 0 at $DIR/boxes.rs:+1:14: +1:22
11       let mut _6: *mut u8;                 // in scope 0 at $DIR/boxes.rs:+1:14: +1:22
12       let mut _7: std::boxed::Box<i32>;    // in scope 0 at $DIR/boxes.rs:+1:14: +1:22
13       let mut _8: *const i32;              // in scope 0 at $DIR/boxes.rs:+1:14: +1:22
14       let mut _9: *const i32;              // in scope 0 at $DIR/boxes.rs:+1:14: +1:22
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: +1:22
24           StorageLive(_3);                 // scope 0 at $DIR/boxes.rs:+1:14: +1:22
25 -         _4 = SizeOf(i32);                // scope 2 at $DIR/boxes.rs:+1:14: +1:22
26 -         _5 = AlignOf(i32);               // scope 2 at $DIR/boxes.rs:+1:14: +1:22
27 +         _4 = const 4_usize;              // scope 2 at $DIR/boxes.rs:+1:14: +1:22
28 +         _5 = const 4_usize;              // scope 2 at $DIR/boxes.rs:+1:14: +1:22
29           _6 = alloc::alloc::exchange_malloc(move _4, move _5) -> bb1; // scope 2 at $DIR/boxes.rs:+1:14: +1:22
30                                            // mir::Constant
31                                            // + span: $DIR/boxes.rs:13:14: 13:22
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: +1:22
37           _7 = ShallowInitBox(move _6, i32); // scope 0 at $DIR/boxes.rs:+1:14: +1:22
38           _8 = (((_7.0: std::ptr::Unique<i32>).0: std::ptr::NonNull<i32>).0: *const i32); // scope 0 at $DIR/boxes.rs:+1:19: +1:21
39           (*_8) = const 42_i32;            // scope 0 at $DIR/boxes.rs:+1:19: +1:21
40           _3 = move _7;                    // scope 0 at $DIR/boxes.rs:+1:14: +1:22
41           StorageDead(_7);                 // scope 0 at $DIR/boxes.rs:+1:21: +1:22
42           _9 = (((_3.0: std::ptr::Unique<i32>).0: std::ptr::NonNull<i32>).0: *const i32); // scope 0 at $DIR/boxes.rs:+1:13: +1:22
43           _2 = (*_9);                      // scope 0 at $DIR/boxes.rs:+1:13: +1:22
44           _1 = Add(move _2, const 0_i32);  // scope 0 at $DIR/boxes.rs:+1:13: +1:26
45           StorageDead(_2);                 // scope 0 at $DIR/boxes.rs:+1:25: +1:26
46           drop(_3) -> [return: bb2, unwind: bb3]; // scope 0 at $DIR/boxes.rs:+1:26: +1:27
47       }
48   
49       bb2: {
50           StorageDead(_3);                 // scope 0 at $DIR/boxes.rs:+1:26: +1:27
51           _0 = const ();                   // scope 0 at $DIR/boxes.rs:+0:11: +2:2
52           StorageDead(_1);                 // scope 0 at $DIR/boxes.rs:+2:1: +2:2
53           return;                          // scope 0 at $DIR/boxes.rs:+2:2: +2:2
54       }
55   
56       bb3 (cleanup): {
57           resume;                          // scope 0 at $DIR/boxes.rs:+0:1: +2:2
58       }
59   }
60