]> git.lizzy.rs Git - rust.git/blob - src/test/mir-opt/issue_41110.test.ElaborateDrops.after.mir
Fix font color for help button in ayu and dark themes
[rust.git] / src / test / mir-opt / issue_41110.test.ElaborateDrops.after.mir
1 // MIR for `test` after ElaborateDrops
2
3 fn test() -> () {
4     let mut _0: ();                      // return place in scope 0 at $DIR/issue-41110.rs:14:15: 14:15
5     let _1: S;                           // in scope 0 at $DIR/issue-41110.rs:15:9: 15:10
6     let _3: ();                          // in scope 0 at $DIR/issue-41110.rs:17:5: 17:12
7     let mut _4: S;                       // in scope 0 at $DIR/issue-41110.rs:17:10: 17:11
8     let mut _5: S;                       // in scope 0 at $DIR/issue-41110.rs:18:9: 18:10
9     let mut _6: bool;                    // in scope 0 at $DIR/issue-41110.rs:19:1: 19:2
10     scope 1 {
11         debug u => _1;                   // in scope 1 at $DIR/issue-41110.rs:15:9: 15:10
12         let mut _2: S;                   // in scope 1 at $DIR/issue-41110.rs:16:9: 16:14
13         scope 2 {
14             debug v => _2;               // in scope 2 at $DIR/issue-41110.rs:16:9: 16:14
15         }
16     }
17
18     bb0: {
19         _6 = const false;                // scope 0 at $DIR/issue-41110.rs:15:9: 15:10
20         StorageLive(_1);                 // scope 0 at $DIR/issue-41110.rs:15:9: 15:10
21         _6 = const true;                 // scope 0 at $DIR/issue-41110.rs:15:13: 15:14
22         _1 = S;                          // scope 0 at $DIR/issue-41110.rs:15:13: 15:14
23         StorageLive(_2);                 // scope 1 at $DIR/issue-41110.rs:16:9: 16:14
24         _2 = S;                          // scope 1 at $DIR/issue-41110.rs:16:17: 16:18
25         StorageLive(_3);                 // scope 2 at $DIR/issue-41110.rs:17:5: 17:12
26         StorageLive(_4);                 // scope 2 at $DIR/issue-41110.rs:17:10: 17:11
27         _4 = move _2;                    // scope 2 at $DIR/issue-41110.rs:17:10: 17:11
28         _3 = const std::mem::drop::<S>(move _4) -> [return: bb2, unwind: bb5]; // scope 2 at $DIR/issue-41110.rs:17:5: 17:12
29                                          // ty::Const
30                                          // + ty: fn(S) {std::mem::drop::<S>}
31                                          // + val: Value(Scalar(<ZST>))
32                                          // mir::Constant
33                                          // + span: $DIR/issue-41110.rs:17:5: 17:9
34                                          // + literal: Const { ty: fn(S) {std::mem::drop::<S>}, val: Value(Scalar(<ZST>)) }
35     }
36
37     bb1 (cleanup): {
38         resume;                          // scope 0 at $DIR/issue-41110.rs:14:1: 19:2
39     }
40
41     bb2: {
42         StorageDead(_4);                 // scope 2 at $DIR/issue-41110.rs:17:11: 17:12
43         StorageDead(_3);                 // scope 2 at $DIR/issue-41110.rs:17:12: 17:13
44         StorageLive(_5);                 // scope 2 at $DIR/issue-41110.rs:18:9: 18:10
45         _6 = const false;                // scope 2 at $DIR/issue-41110.rs:18:9: 18:10
46         _5 = move _1;                    // scope 2 at $DIR/issue-41110.rs:18:9: 18:10
47         goto -> bb12;                    // scope 2 at $DIR/issue-41110.rs:18:5: 18:6
48     }
49
50     bb3 (cleanup): {
51         goto -> bb15;                    // scope 0 at $DIR/issue-41110.rs:19:1: 19:2
52     }
53
54     bb4 (cleanup): {
55         goto -> bb3;                     // scope 1 at $DIR/issue-41110.rs:19:1: 19:2
56     }
57
58     bb5 (cleanup): {
59         goto -> bb4;                     // scope 2 at $DIR/issue-41110.rs:17:11: 17:12
60     }
61
62     bb6: {
63         goto -> bb8;                     // scope 2 at $DIR/issue-41110.rs:18:9: 18:10
64     }
65
66     bb7 (cleanup): {
67         goto -> bb4;                     // scope 2 at $DIR/issue-41110.rs:18:9: 18:10
68     }
69
70     bb8: {
71         StorageDead(_5);                 // scope 2 at $DIR/issue-41110.rs:18:9: 18:10
72         _0 = const ();                   // scope 0 at $DIR/issue-41110.rs:14:15: 19:2
73                                          // ty::Const
74                                          // + ty: ()
75                                          // + val: Value(Scalar(<ZST>))
76                                          // mir::Constant
77                                          // + span: $DIR/issue-41110.rs:14:15: 19:2
78                                          // + literal: Const { ty: (), val: Value(Scalar(<ZST>)) }
79         drop(_2) -> [return: bb9, unwind: bb3]; // scope 1 at $DIR/issue-41110.rs:19:1: 19:2
80     }
81
82     bb9: {
83         StorageDead(_2);                 // scope 1 at $DIR/issue-41110.rs:19:1: 19:2
84         goto -> bb10;                    // scope 0 at $DIR/issue-41110.rs:19:1: 19:2
85     }
86
87     bb10: {
88         _6 = const false;                // scope 0 at $DIR/issue-41110.rs:19:1: 19:2
89         StorageDead(_1);                 // scope 0 at $DIR/issue-41110.rs:19:1: 19:2
90         return;                          // scope 0 at $DIR/issue-41110.rs:19:2: 19:2
91     }
92
93     bb11 (cleanup): {
94         _2 = move _5;                    // scope 2 at $DIR/issue-41110.rs:18:5: 18:6
95         goto -> bb7;                     // scope 2 at $DIR/issue-41110.rs:18:5: 18:6
96     }
97
98     bb12: {
99         _2 = move _5;                    // scope 2 at $DIR/issue-41110.rs:18:5: 18:6
100         goto -> bb6;                     // scope 2 at $DIR/issue-41110.rs:18:5: 18:6
101     }
102
103     bb13 (cleanup): {
104         drop(_1) -> bb1;                 // scope 0 at $DIR/issue-41110.rs:19:1: 19:2
105     }
106
107     bb14 (cleanup): {
108         _6 = const false;                // scope 0 at $DIR/issue-41110.rs:19:1: 19:2
109         goto -> bb13;                    // scope 0 at $DIR/issue-41110.rs:19:1: 19:2
110     }
111
112     bb15 (cleanup): {
113         switchInt(_6) -> [false: bb1, otherwise: bb14]; // scope 0 at $DIR/issue-41110.rs:19:1: 19:2
114     }
115 }