]> git.lizzy.rs Git - rust.git/blob - src/test/mir-opt/address_of.borrow_and_cast.SimplifyCfg-initial.after.mir
Rollup merge of #99084 - RalfJung:write_bytes, r=thomcc
[rust.git] / src / test / mir-opt / address_of.borrow_and_cast.SimplifyCfg-initial.after.mir
1 // MIR for `borrow_and_cast` after SimplifyCfg-initial
2
3 fn borrow_and_cast(_1: i32) -> () {
4     debug x => _1;                       // in scope 0 at $DIR/address-of.rs:41:20: 41:25
5     let mut _0: ();                      // return place in scope 0 at $DIR/address-of.rs:41:32: 41:32
6     let _2: *const i32;                  // in scope 0 at $DIR/address-of.rs:42:9: 42:10
7     let _3: &i32;                        // in scope 0 at $DIR/address-of.rs:42:13: 42:15
8     let _5: &mut i32;                    // in scope 0 at $DIR/address-of.rs:43:13: 43:19
9     let mut _7: &mut i32;                // in scope 0 at $DIR/address-of.rs:44:13: 44:19
10     scope 1 {
11         debug p => _2;                   // in scope 1 at $DIR/address-of.rs:42:9: 42:10
12         let _4: *const i32;              // in scope 1 at $DIR/address-of.rs:43:9: 43:10
13         scope 2 {
14             debug q => _4;               // in scope 2 at $DIR/address-of.rs:43:9: 43:10
15             let _6: *mut i32;            // in scope 2 at $DIR/address-of.rs:44:9: 44:10
16             scope 3 {
17                 debug r => _6;           // in scope 3 at $DIR/address-of.rs:44:9: 44:10
18             }
19         }
20     }
21
22     bb0: {
23         StorageLive(_2);                 // scope 0 at $DIR/address-of.rs:42:9: 42:10
24         StorageLive(_3);                 // scope 0 at $DIR/address-of.rs:42:13: 42:15
25         _3 = &_1;                        // scope 0 at $DIR/address-of.rs:42:13: 42:15
26         _2 = &raw const (*_3);           // scope 0 at $DIR/address-of.rs:42:13: 42:15
27         FakeRead(ForLet(None), _2);      // scope 0 at $DIR/address-of.rs:42:9: 42:10
28         StorageDead(_3);                 // scope 0 at $DIR/address-of.rs:42:29: 42:30
29         StorageLive(_4);                 // scope 1 at $DIR/address-of.rs:43:9: 43:10
30         StorageLive(_5);                 // scope 1 at $DIR/address-of.rs:43:13: 43:19
31         _5 = &mut _1;                    // scope 1 at $DIR/address-of.rs:43:13: 43:19
32         _4 = &raw const (*_5);           // scope 1 at $DIR/address-of.rs:43:13: 43:19
33         FakeRead(ForLet(None), _4);      // scope 1 at $DIR/address-of.rs:43:9: 43:10
34         StorageDead(_5);                 // scope 1 at $DIR/address-of.rs:43:33: 43:34
35         StorageLive(_6);                 // scope 2 at $DIR/address-of.rs:44:9: 44:10
36         StorageLive(_7);                 // scope 2 at $DIR/address-of.rs:44:13: 44:19
37         _7 = &mut _1;                    // scope 2 at $DIR/address-of.rs:44:13: 44:19
38         _6 = &raw mut (*_7);             // scope 2 at $DIR/address-of.rs:44:13: 44:19
39         FakeRead(ForLet(None), _6);      // scope 2 at $DIR/address-of.rs:44:9: 44:10
40         StorageDead(_7);                 // scope 2 at $DIR/address-of.rs:44:31: 44:32
41         _0 = const ();                   // scope 0 at $DIR/address-of.rs:41:32: 45:2
42         StorageDead(_6);                 // scope 2 at $DIR/address-of.rs:45:1: 45:2
43         StorageDead(_4);                 // scope 1 at $DIR/address-of.rs:45:1: 45:2
44         StorageDead(_2);                 // scope 0 at $DIR/address-of.rs:45:1: 45:2
45         return;                          // scope 0 at $DIR/address-of.rs:45:2: 45:2
46     }
47 }