]> git.lizzy.rs Git - rust.git/blob - src/test/mir-opt/inline/inline_retag.bar.Inline.after.mir
Rollup merge of #92022 - woodenarrow:br_expected_bool, r=estebank
[rust.git] / src / test / mir-opt / inline / inline_retag.bar.Inline.after.mir
1 // MIR for `bar` after Inline
2
3 fn bar() -> bool {
4     let mut _0: bool;                    // return place in scope 0 at $DIR/inline-retag.rs:10:13: 10:17
5     let _1: for<'r, 's> fn(&'r i32, &'s i32) -> bool {foo}; // in scope 0 at $DIR/inline-retag.rs:11:9: 11:10
6     let mut _2: for<'r, 's> fn(&'r i32, &'s i32) -> bool {foo}; // in scope 0 at $DIR/inline-retag.rs:12:5: 12:6
7     let mut _3: &i32;                    // in scope 0 at $DIR/inline-retag.rs:12:7: 12:9
8     let _4: &i32;                        // in scope 0 at $DIR/inline-retag.rs:12:7: 12:9
9     let _5: i32;                         // in scope 0 at $DIR/inline-retag.rs:12:8: 12:9
10     let mut _6: &i32;                    // in scope 0 at $DIR/inline-retag.rs:12:11: 12:14
11     let _7: &i32;                        // in scope 0 at $DIR/inline-retag.rs:12:11: 12:14
12     let _8: i32;                         // in scope 0 at $DIR/inline-retag.rs:12:12: 12:14
13     scope 1 {
14         debug f => _1;                   // in scope 1 at $DIR/inline-retag.rs:11:9: 11:10
15         let mut _9: &i32;                // in scope 1 at $DIR/inline-retag.rs:12:11: 12:14
16         let mut _10: &i32;               // in scope 1 at $DIR/inline-retag.rs:12:7: 12:9
17         scope 2 (inlined foo) {          // at $DIR/inline-retag.rs:12:5: 12:15
18             debug x => _3;               // in scope 2 at $DIR/inline-retag.rs:12:5: 12:15
19             debug y => _6;               // in scope 2 at $DIR/inline-retag.rs:12:5: 12:15
20             let mut _11: i32;            // in scope 2 at $DIR/inline-retag.rs:12:5: 12:15
21             let mut _12: i32;            // in scope 2 at $DIR/inline-retag.rs:12:5: 12:15
22         }
23     }
24
25     bb0: {
26         StorageLive(_1);                 // scope 0 at $DIR/inline-retag.rs:11:9: 11:10
27         _1 = foo;                        // scope 0 at $DIR/inline-retag.rs:11:13: 11:16
28                                          // mir::Constant
29                                          // + span: $DIR/inline-retag.rs:11:13: 11:16
30                                          // + literal: Const { ty: for<'r, 's> fn(&'r i32, &'s i32) -> bool {foo}, val: Value(Scalar(<ZST>)) }
31         StorageLive(_2);                 // scope 1 at $DIR/inline-retag.rs:12:5: 12:6
32         _2 = _1;                         // scope 1 at $DIR/inline-retag.rs:12:5: 12:6
33         StorageLive(_3);                 // scope 1 at $DIR/inline-retag.rs:12:7: 12:9
34         StorageLive(_4);                 // scope 1 at $DIR/inline-retag.rs:12:7: 12:9
35         _10 = const bar::promoted[1];    // scope 1 at $DIR/inline-retag.rs:12:7: 12:9
36                                          // ty::Const
37                                          // + ty: &i32
38                                          // + val: Unevaluated(bar, [], Some(promoted[1]))
39                                          // mir::Constant
40                                          // + span: $DIR/inline-retag.rs:12:7: 12:9
41                                          // + literal: Const { ty: &i32, val: Unevaluated(Unevaluated { def: WithOptConstParam { did: DefId(0:4 ~ inline_retag[HASH]::bar), const_param_did: None }, substs_: Some([]), promoted: Some(promoted[1]) }) }
42         Retag(_10);                      // scope 1 at $DIR/inline-retag.rs:12:7: 12:9
43         _4 = &(*_10);                    // scope 1 at $DIR/inline-retag.rs:12:7: 12:9
44         Retag(_4);                       // scope 1 at $DIR/inline-retag.rs:12:7: 12:9
45         _3 = &(*_4);                     // scope 1 at $DIR/inline-retag.rs:12:7: 12:9
46         Retag(_3);                       // scope 1 at $DIR/inline-retag.rs:12:7: 12:9
47         StorageLive(_6);                 // scope 1 at $DIR/inline-retag.rs:12:11: 12:14
48         StorageLive(_7);                 // scope 1 at $DIR/inline-retag.rs:12:11: 12:14
49         _9 = const bar::promoted[0];     // scope 1 at $DIR/inline-retag.rs:12:11: 12:14
50                                          // ty::Const
51                                          // + ty: &i32
52                                          // + val: Unevaluated(bar, [], Some(promoted[0]))
53                                          // mir::Constant
54                                          // + span: $DIR/inline-retag.rs:12:11: 12:14
55                                          // + literal: Const { ty: &i32, val: Unevaluated(Unevaluated { def: WithOptConstParam { did: DefId(0:4 ~ inline_retag[HASH]::bar), const_param_did: None }, substs_: Some([]), promoted: Some(promoted[0]) }) }
56         Retag(_9);                       // scope 1 at $DIR/inline-retag.rs:12:11: 12:14
57         _7 = &(*_9);                     // scope 1 at $DIR/inline-retag.rs:12:11: 12:14
58         Retag(_7);                       // scope 1 at $DIR/inline-retag.rs:12:11: 12:14
59         _6 = &(*_7);                     // scope 1 at $DIR/inline-retag.rs:12:11: 12:14
60         Retag(_6);                       // scope 1 at $DIR/inline-retag.rs:12:11: 12:14
61         Retag(_3);                       // scope 2 at $DIR/inline-retag.rs:12:5: 12:15
62         Retag(_6);                       // scope 2 at $DIR/inline-retag.rs:12:5: 12:15
63         StorageLive(_11);                // scope 2 at $DIR/inline-retag.rs:12:5: 12:15
64         _11 = (*_3);                     // scope 2 at $DIR/inline-retag.rs:12:5: 12:15
65         StorageLive(_12);                // scope 2 at $DIR/inline-retag.rs:12:5: 12:15
66         _12 = (*_6);                     // scope 2 at $DIR/inline-retag.rs:12:5: 12:15
67         _0 = Eq(move _11, move _12);     // scope 2 at $DIR/inline-retag.rs:12:5: 12:15
68         StorageDead(_12);                // scope 2 at $DIR/inline-retag.rs:12:5: 12:15
69         StorageDead(_11);                // scope 2 at $DIR/inline-retag.rs:12:5: 12:15
70         StorageDead(_6);                 // scope 1 at $DIR/inline-retag.rs:12:14: 12:15
71         StorageDead(_3);                 // scope 1 at $DIR/inline-retag.rs:12:14: 12:15
72         StorageDead(_2);                 // scope 1 at $DIR/inline-retag.rs:12:14: 12:15
73         StorageDead(_1);                 // scope 0 at $DIR/inline-retag.rs:13:1: 13:2
74         StorageDead(_7);                 // scope 0 at $DIR/inline-retag.rs:13:1: 13:2
75         StorageDead(_4);                 // scope 0 at $DIR/inline-retag.rs:13:1: 13:2
76         return;                          // scope 0 at $DIR/inline-retag.rs:13:2: 13:2
77     }
78 }