]> git.lizzy.rs Git - rust.git/blob - src/test/mir-opt/address-of/rustc.borrow_and_cast.SimplifyCfg-initial.after.mir
Fix wrong argument in autoderef process
[rust.git] / src / test / mir-opt / address-of / rustc.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);                 // bb0[0]: scope 0 at $DIR/address-of.rs:42:9: 42:10
24         StorageLive(_3);                 // bb0[1]: scope 0 at $DIR/address-of.rs:42:13: 42:15
25         _3 = &_1;                        // bb0[2]: scope 0 at $DIR/address-of.rs:42:13: 42:15
26         _2 = &raw const (*_3);           // bb0[3]: scope 0 at $DIR/address-of.rs:42:13: 42:15
27         FakeRead(ForLet, _2);            // bb0[4]: scope 0 at $DIR/address-of.rs:42:9: 42:10
28         StorageDead(_3);                 // bb0[5]: scope 0 at $DIR/address-of.rs:42:29: 42:30
29         StorageLive(_4);                 // bb0[6]: scope 1 at $DIR/address-of.rs:43:9: 43:10
30         StorageLive(_5);                 // bb0[7]: scope 1 at $DIR/address-of.rs:43:13: 43:19
31         _5 = &mut _1;                    // bb0[8]: scope 1 at $DIR/address-of.rs:43:13: 43:19
32         _4 = &raw const (*_5);           // bb0[9]: scope 1 at $DIR/address-of.rs:43:13: 43:19
33         FakeRead(ForLet, _4);            // bb0[10]: scope 1 at $DIR/address-of.rs:43:9: 43:10
34         StorageDead(_5);                 // bb0[11]: scope 1 at $DIR/address-of.rs:43:33: 43:34
35         StorageLive(_6);                 // bb0[12]: scope 2 at $DIR/address-of.rs:44:9: 44:10
36         StorageLive(_7);                 // bb0[13]: scope 2 at $DIR/address-of.rs:44:13: 44:19
37         _7 = &mut _1;                    // bb0[14]: scope 2 at $DIR/address-of.rs:44:13: 44:19
38         _6 = &raw mut (*_7);             // bb0[15]: scope 2 at $DIR/address-of.rs:44:13: 44:19
39         FakeRead(ForLet, _6);            // bb0[16]: scope 2 at $DIR/address-of.rs:44:9: 44:10
40         StorageDead(_7);                 // bb0[17]: scope 2 at $DIR/address-of.rs:44:31: 44:32
41         _0 = const ();                   // bb0[18]: scope 0 at $DIR/address-of.rs:41:32: 45:2
42                                          // ty::Const
43                                          // + ty: ()
44                                          // + val: Value(Scalar(<ZST>))
45                                          // mir::Constant
46                                          // + span: $DIR/address-of.rs:41:32: 45:2
47                                          // + literal: Const { ty: (), val: Value(Scalar(<ZST>)) }
48         StorageDead(_6);                 // bb0[19]: scope 2 at $DIR/address-of.rs:45:1: 45:2
49         StorageDead(_4);                 // bb0[20]: scope 1 at $DIR/address-of.rs:45:1: 45:2
50         StorageDead(_2);                 // bb0[21]: scope 0 at $DIR/address-of.rs:45:1: 45:2
51         return;                          // bb0[22]: scope 0 at $DIR/address-of.rs:45:2: 45:2
52     }
53 }