]> git.lizzy.rs Git - rust.git/blob - tests/mir-opt/inline/inline_retag.bar.Inline.after.mir
Rollup merge of #106397 - compiler-errors:new-solver-impl-wc, r=lcnr
[rust.git] / tests / 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:+0:13: +0:17
5     let _1: for<'a, 'b> fn(&'a i32, &'b i32) -> bool {foo}; // in scope 0 at $DIR/inline_retag.rs:+1:9: +1:10
6     let mut _2: for<'a, 'b> fn(&'a i32, &'b i32) -> bool {foo}; // in scope 0 at $DIR/inline_retag.rs:+2:5: +2:6
7     let mut _3: &i32;                    // in scope 0 at $DIR/inline_retag.rs:+2:7: +2:9
8     let _4: &i32;                        // in scope 0 at $DIR/inline_retag.rs:+2:7: +2:9
9     let _5: i32;                         // in scope 0 at $DIR/inline_retag.rs:+2:8: +2:9
10     let mut _6: &i32;                    // in scope 0 at $DIR/inline_retag.rs:+2:11: +2:14
11     let _7: &i32;                        // in scope 0 at $DIR/inline_retag.rs:+2:11: +2:14
12     let _8: i32;                         // in scope 0 at $DIR/inline_retag.rs:+2:12: +2:14
13     scope 1 {
14         debug f => _1;                   // in scope 1 at $DIR/inline_retag.rs:+1:9: +1:10
15         let mut _9: &i32;                // in scope 1 at $DIR/inline_retag.rs:+2:11: +2:14
16         let mut _10: &i32;               // in scope 1 at $DIR/inline_retag.rs:+2:7: +2: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:16:8: 16:9
19             debug y => _6;               // in scope 2 at $DIR/inline_retag.rs:16:17: 16:18
20             let mut _11: i32;            // in scope 2 at $DIR/inline_retag.rs:17:5: 17:7
21             let mut _12: i32;            // in scope 2 at $DIR/inline_retag.rs:17:11: 17:13
22         }
23     }
24
25     bb0: {
26         StorageLive(_1);                 // scope 0 at $DIR/inline_retag.rs:+1:9: +1:10
27         _1 = foo;                        // scope 0 at $DIR/inline_retag.rs:+1:13: +1:16
28                                          // mir::Constant
29                                          // + span: $DIR/inline_retag.rs:11:13: 11:16
30                                          // + literal: Const { ty: for<'a, 'b> fn(&'a i32, &'b i32) -> bool {foo}, val: Value(<ZST>) }
31         StorageLive(_2);                 // scope 1 at $DIR/inline_retag.rs:+2:5: +2:6
32         _2 = _1;                         // scope 1 at $DIR/inline_retag.rs:+2:5: +2:6
33         StorageLive(_3);                 // scope 1 at $DIR/inline_retag.rs:+2:7: +2:9
34         StorageLive(_4);                 // scope 1 at $DIR/inline_retag.rs:+2:7: +2:9
35         _10 = const _;                   // scope 1 at $DIR/inline_retag.rs:+2:7: +2:9
36                                          // mir::Constant
37                                          // + span: $DIR/inline_retag.rs:12:7: 12:9
38                                          // + literal: Const { ty: &i32, val: Unevaluated(bar, [], Some(promoted[1])) }
39         Retag(_10);                      // scope 1 at $DIR/inline_retag.rs:+2:7: +2:9
40         _4 = &(*_10);                    // scope 1 at $DIR/inline_retag.rs:+2:7: +2:9
41         _3 = &(*_4);                     // scope 1 at $DIR/inline_retag.rs:+2:7: +2:9
42         StorageLive(_6);                 // scope 1 at $DIR/inline_retag.rs:+2:11: +2:14
43         StorageLive(_7);                 // scope 1 at $DIR/inline_retag.rs:+2:11: +2:14
44         _9 = const _;                    // scope 1 at $DIR/inline_retag.rs:+2:11: +2:14
45                                          // mir::Constant
46                                          // + span: $DIR/inline_retag.rs:12:11: 12:14
47                                          // + literal: Const { ty: &i32, val: Unevaluated(bar, [], Some(promoted[0])) }
48         Retag(_9);                       // scope 1 at $DIR/inline_retag.rs:+2:11: +2:14
49         _7 = &(*_9);                     // scope 1 at $DIR/inline_retag.rs:+2:11: +2:14
50         _6 = &(*_7);                     // scope 1 at $DIR/inline_retag.rs:+2:11: +2:14
51         Retag(_3);                       // scope 2 at $DIR/inline_retag.rs:16:8: 16:9
52         Retag(_6);                       // scope 2 at $DIR/inline_retag.rs:16:17: 16:18
53         StorageLive(_11);                // scope 2 at $DIR/inline_retag.rs:17:5: 17:7
54         _11 = (*_3);                     // scope 2 at $DIR/inline_retag.rs:17:5: 17:7
55         StorageLive(_12);                // scope 2 at $DIR/inline_retag.rs:17:11: 17:13
56         _12 = (*_6);                     // scope 2 at $DIR/inline_retag.rs:17:11: 17:13
57         _0 = Eq(move _11, move _12);     // scope 2 at $DIR/inline_retag.rs:17:5: 17:13
58         StorageDead(_12);                // scope 2 at $DIR/inline_retag.rs:17:12: 17:13
59         StorageDead(_11);                // scope 2 at $DIR/inline_retag.rs:17:12: 17:13
60         StorageDead(_6);                 // scope 1 at $DIR/inline_retag.rs:+2:14: +2:15
61         StorageDead(_3);                 // scope 1 at $DIR/inline_retag.rs:+2:14: +2:15
62         StorageDead(_2);                 // scope 1 at $DIR/inline_retag.rs:+2:14: +2:15
63         StorageDead(_1);                 // scope 0 at $DIR/inline_retag.rs:+3:1: +3:2
64         StorageDead(_7);                 // scope 0 at $DIR/inline_retag.rs:+3:1: +3:2
65         StorageDead(_4);                 // scope 0 at $DIR/inline_retag.rs:+3:1: +3:2
66         return;                          // scope 0 at $DIR/inline_retag.rs:+3:2: +3:2
67     }
68 }