]> git.lizzy.rs Git - rust.git/blob - src/test/mir-opt/uniform_array_move_out.move_out_by_subslice.mir_map.0.mir
Rollup merge of #74871 - etherealist:musl_doc, r=Mark-Simulacrum
[rust.git] / src / test / mir-opt / uniform_array_move_out.move_out_by_subslice.mir_map.0.mir
1 // MIR for `move_out_by_subslice` 0 mir_map
2
3 fn move_out_by_subslice() -> () {
4     let mut _0: ();                      // return place in scope 0 at $DIR/uniform_array_move_out.rs:10:27: 10:27
5     let _1: [std::boxed::Box<i32>; 2];   // in scope 0 at $DIR/uniform_array_move_out.rs:11:9: 11:10
6     let mut _2: std::boxed::Box<i32>;    // in scope 0 at $DIR/uniform_array_move_out.rs:11:14: 11:19
7     let mut _3: std::boxed::Box<i32>;    // in scope 0 at $DIR/uniform_array_move_out.rs:11:14: 11:19
8     let mut _4: std::boxed::Box<i32>;    // in scope 0 at $DIR/uniform_array_move_out.rs:11:21: 11:26
9     let mut _5: std::boxed::Box<i32>;    // in scope 0 at $DIR/uniform_array_move_out.rs:11:21: 11:26
10     scope 1 {
11         debug a => _1;                   // in scope 1 at $DIR/uniform_array_move_out.rs:11:9: 11:10
12         let _6: [std::boxed::Box<i32>; 2]; // in scope 1 at $DIR/uniform_array_move_out.rs:12:10: 12:17
13         scope 2 {
14             debug _y => _6;              // in scope 2 at $DIR/uniform_array_move_out.rs:12:10: 12:17
15         }
16     }
17
18     bb0: {
19         StorageLive(_1);                 // scope 0 at $DIR/uniform_array_move_out.rs:11:9: 11:10
20         StorageLive(_2);                 // scope 0 at $DIR/uniform_array_move_out.rs:11:14: 11:19
21         StorageLive(_3);                 // scope 0 at $DIR/uniform_array_move_out.rs:11:14: 11:19
22         _3 = Box(i32);                   // scope 0 at $DIR/uniform_array_move_out.rs:11:14: 11:19
23         (*_3) = const 1_i32;             // scope 0 at $DIR/uniform_array_move_out.rs:11:18: 11:19
24                                          // ty::Const
25                                          // + ty: i32
26                                          // + val: Value(Scalar(0x00000001))
27                                          // mir::Constant
28                                          // + span: $DIR/uniform_array_move_out.rs:11:18: 11:19
29                                          // + literal: Const { ty: i32, val: Value(Scalar(0x00000001)) }
30         _2 = move _3;                    // scope 0 at $DIR/uniform_array_move_out.rs:11:14: 11:19
31         drop(_3) -> [return: bb4, unwind: bb2]; // scope 0 at $DIR/uniform_array_move_out.rs:11:18: 11:19
32     }
33
34     bb1 (cleanup): {
35         resume;                          // scope 0 at $DIR/uniform_array_move_out.rs:10:1: 13:2
36     }
37
38     bb2 (cleanup): {
39         drop(_2) -> bb1;                 // scope 0 at $DIR/uniform_array_move_out.rs:11:26: 11:27
40     }
41
42     bb3 (cleanup): {
43         drop(_3) -> bb2;                 // scope 0 at $DIR/uniform_array_move_out.rs:11:18: 11:19
44     }
45
46     bb4: {
47         StorageDead(_3);                 // scope 0 at $DIR/uniform_array_move_out.rs:11:18: 11:19
48         StorageLive(_4);                 // scope 0 at $DIR/uniform_array_move_out.rs:11:21: 11:26
49         StorageLive(_5);                 // scope 0 at $DIR/uniform_array_move_out.rs:11:21: 11:26
50         _5 = Box(i32);                   // scope 0 at $DIR/uniform_array_move_out.rs:11:21: 11:26
51         (*_5) = const 2_i32;             // scope 0 at $DIR/uniform_array_move_out.rs:11:25: 11:26
52                                          // ty::Const
53                                          // + ty: i32
54                                          // + val: Value(Scalar(0x00000002))
55                                          // mir::Constant
56                                          // + span: $DIR/uniform_array_move_out.rs:11:25: 11:26
57                                          // + literal: Const { ty: i32, val: Value(Scalar(0x00000002)) }
58         _4 = move _5;                    // scope 0 at $DIR/uniform_array_move_out.rs:11:21: 11:26
59         drop(_5) -> [return: bb7, unwind: bb5]; // scope 0 at $DIR/uniform_array_move_out.rs:11:25: 11:26
60     }
61
62     bb5 (cleanup): {
63         drop(_4) -> bb2;                 // scope 0 at $DIR/uniform_array_move_out.rs:11:26: 11:27
64     }
65
66     bb6 (cleanup): {
67         drop(_5) -> bb5;                 // scope 0 at $DIR/uniform_array_move_out.rs:11:25: 11:26
68     }
69
70     bb7: {
71         StorageDead(_5);                 // scope 0 at $DIR/uniform_array_move_out.rs:11:25: 11:26
72         _1 = [move _2, move _4];         // scope 0 at $DIR/uniform_array_move_out.rs:11:13: 11:27
73         drop(_4) -> [return: bb8, unwind: bb2]; // scope 0 at $DIR/uniform_array_move_out.rs:11:26: 11:27
74     }
75
76     bb8: {
77         StorageDead(_4);                 // scope 0 at $DIR/uniform_array_move_out.rs:11:26: 11:27
78         drop(_2) -> [return: bb9, unwind: bb1]; // scope 0 at $DIR/uniform_array_move_out.rs:11:26: 11:27
79     }
80
81     bb9: {
82         StorageDead(_2);                 // scope 0 at $DIR/uniform_array_move_out.rs:11:26: 11:27
83         FakeRead(ForLet, _1);            // scope 0 at $DIR/uniform_array_move_out.rs:11:9: 11:10
84         StorageLive(_6);                 // scope 1 at $DIR/uniform_array_move_out.rs:12:10: 12:17
85         _6 = move _1[0..2];              // scope 1 at $DIR/uniform_array_move_out.rs:12:10: 12:17
86         _0 = const ();                   // scope 0 at $DIR/uniform_array_move_out.rs:10:27: 13:2
87                                          // ty::Const
88                                          // + ty: ()
89                                          // + val: Value(Scalar(<ZST>))
90                                          // mir::Constant
91                                          // + span: $DIR/uniform_array_move_out.rs:10:27: 13:2
92                                          // + literal: Const { ty: (), val: Value(Scalar(<ZST>)) }
93         drop(_6) -> [return: bb12, unwind: bb10]; // scope 1 at $DIR/uniform_array_move_out.rs:13:1: 13:2
94     }
95
96     bb10 (cleanup): {
97         drop(_1) -> bb1;                 // scope 0 at $DIR/uniform_array_move_out.rs:13:1: 13:2
98     }
99
100     bb11 (cleanup): {
101         drop(_6) -> bb10;                // scope 1 at $DIR/uniform_array_move_out.rs:13:1: 13:2
102     }
103
104     bb12: {
105         StorageDead(_6);                 // scope 1 at $DIR/uniform_array_move_out.rs:13:1: 13:2
106         drop(_1) -> [return: bb13, unwind: bb1]; // scope 0 at $DIR/uniform_array_move_out.rs:13:1: 13:2
107     }
108
109     bb13: {
110         StorageDead(_1);                 // scope 0 at $DIR/uniform_array_move_out.rs:13:1: 13:2
111         goto -> bb14;                    // scope 0 at $DIR/uniform_array_move_out.rs:13:2: 13:2
112     }
113
114     bb14: {
115         return;                          // scope 0 at $DIR/uniform_array_move_out.rs:13:2: 13:2
116     }
117 }