]> git.lizzy.rs Git - rust.git/blob - src/test/mir-opt/inline/inline_diverging.h.Inline.diff
Rollup merge of #94657 - fee1-dead:const_slice_index, r=oli-obk
[rust.git] / src / test / mir-opt / inline / inline_diverging.h.Inline.diff
1 - // MIR for `h` before Inline
2 + // MIR for `h` after Inline
3   
4   fn h() -> () {
5       let mut _0: ();                      // return place in scope 0 at $DIR/inline-diverging.rs:21:12: 21:12
6       let _1: (!, !);                      // in scope 0 at $DIR/inline-diverging.rs:22:5: 22:22
7 +     let mut _2: fn() -> ! {sleep};       // in scope 0 at $DIR/inline-diverging.rs:22:5: 22:22
8 +     let mut _9: ();                      // in scope 0 at $DIR/inline-diverging.rs:27:13: 27:16
9 +     let mut _10: ();                     // in scope 0 at $DIR/inline-diverging.rs:28:13: 28:16
10 +     scope 1 (inlined call_twice::<!, fn() -> ! {sleep}>) { // at $DIR/inline-diverging.rs:22:5: 22:22
11 +         debug f => _2;                   // in scope 1 at $DIR/inline-diverging.rs:26:36: 26:37
12 +         let _3: !;                       // in scope 1 at $DIR/inline-diverging.rs:27:9: 27:10
13 +         let mut _4: &fn() -> ! {sleep};  // in scope 1 at $DIR/inline-diverging.rs:27:13: 27:14
14 +         let mut _6: &fn() -> ! {sleep};  // in scope 1 at $DIR/inline-diverging.rs:28:13: 28:14
15 +         let mut _7: !;                   // in scope 1 at $DIR/inline-diverging.rs:29:6: 29:7
16 +         let mut _8: !;                   // in scope 1 at $DIR/inline-diverging.rs:29:9: 29:10
17 +         scope 2 {
18 +             debug a => _3;               // in scope 2 at $DIR/inline-diverging.rs:27:9: 27:10
19 +             let _5: !;                   // in scope 2 at $DIR/inline-diverging.rs:28:9: 28:10
20 +             scope 3 {
21 +                 debug b => _5;           // in scope 3 at $DIR/inline-diverging.rs:28:9: 28:10
22 +             }
23 +             scope 6 (inlined <fn() -> ! {sleep} as Fn<()>>::call - shim(fn() -> ! {sleep})) { // at $DIR/inline-diverging.rs:28:13: 28:16
24 +                 scope 7 (inlined sleep) { // at $SRC_DIR/core/src/ops/function.rs:LL:COL
25 +                 }
26 +             }
27 +         }
28 +         scope 4 (inlined <fn() -> ! {sleep} as Fn<()>>::call - shim(fn() -> ! {sleep})) { // at $DIR/inline-diverging.rs:27:13: 27:16
29 +             scope 5 (inlined sleep) {    // at $SRC_DIR/core/src/ops/function.rs:LL:COL
30 +             }
31 +         }
32 +     }
33   
34       bb0: {
35           StorageLive(_1);                 // scope 0 at $DIR/inline-diverging.rs:22:5: 22:22
36 -         _1 = call_twice::<!, fn() -> ! {sleep}>(sleep) -> bb1; // scope 0 at $DIR/inline-diverging.rs:22:5: 22:22
37 +         StorageLive(_2);                 // scope 0 at $DIR/inline-diverging.rs:22:5: 22:22
38 +         _2 = sleep;                      // scope 0 at $DIR/inline-diverging.rs:22:5: 22:22
39                                            // mir::Constant
40 -                                          // + span: $DIR/inline-diverging.rs:22:5: 22:15
41 -                                          // + literal: Const { ty: fn(fn() -> ! {sleep}) -> (!, !) {call_twice::<!, fn() -> ! {sleep}>}, val: Value(Scalar(<ZST>)) }
42 -                                          // mir::Constant
43                                            // + span: $DIR/inline-diverging.rs:22:16: 22:21
44                                            // + literal: Const { ty: fn() -> ! {sleep}, val: Value(Scalar(<ZST>)) }
45 +         StorageLive(_3);                 // scope 1 at $DIR/inline-diverging.rs:27:9: 27:10
46 +         StorageLive(_4);                 // scope 1 at $DIR/inline-diverging.rs:27:13: 27:14
47 +         _4 = &_2;                        // scope 1 at $DIR/inline-diverging.rs:27:13: 27:14
48 +         StorageLive(_9);                 // scope 1 at $DIR/inline-diverging.rs:27:13: 27:16
49 +         _9 = const ();                   // scope 1 at $DIR/inline-diverging.rs:27:13: 27:16
50 +         goto -> bb1;                     // scope 5 at $DIR/inline-diverging.rs:39:5: 39:12
51       }
52   
53       bb1: {
54 -         StorageDead(_1);                 // scope 0 at $DIR/inline-diverging.rs:22:22: 22:23
55 -         _0 = const ();                   // scope 0 at $DIR/inline-diverging.rs:21:12: 23:2
56 -         return;                          // scope 0 at $DIR/inline-diverging.rs:23:2: 23:2
57 +         goto -> bb1;                     // scope 5 at $DIR/inline-diverging.rs:39:5: 39:12
58       }
59   }
60