]> git.lizzy.rs Git - rust.git/blob - tests/mir-opt/slice_filter.variant_b-{closure#0}.CopyProp.diff
Rollup merge of #107596 - Kobzol:stage-build-timer, r=Mark-Simulacrum
[rust.git] / tests / mir-opt / slice_filter.variant_b-{closure#0}.CopyProp.diff
1 - // MIR for `variant_b::{closure#0}` before CopyProp
2 + // MIR for `variant_b::{closure#0}` after CopyProp
3   
4   fn variant_b::{closure#0}(_1: &mut [closure@$DIR/slice_filter.rs:12:25: 12:41], _2: &&(usize, usize, usize, usize)) -> bool {
5       let mut _0: bool;                    // return place in scope 0 at $DIR/slice_filter.rs:+0:42: +0:42
6       let _3: usize;                       // in scope 0 at $DIR/slice_filter.rs:+0:29: +0:30
7       let _4: usize;                       // in scope 0 at $DIR/slice_filter.rs:+0:32: +0:33
8       let _5: usize;                       // in scope 0 at $DIR/slice_filter.rs:+0:35: +0:36
9       let _6: usize;                       // in scope 0 at $DIR/slice_filter.rs:+0:38: +0:39
10       let mut _7: bool;                    // in scope 0 at $DIR/slice_filter.rs:+0:42: +0:58
11       let mut _8: bool;                    // in scope 0 at $DIR/slice_filter.rs:+0:42: +0:48
12       let mut _9: usize;                   // in scope 0 at $DIR/slice_filter.rs:+0:42: +0:43
13       let mut _10: usize;                  // in scope 0 at $DIR/slice_filter.rs:+0:47: +0:48
14       let mut _11: bool;                   // in scope 0 at $DIR/slice_filter.rs:+0:52: +0:58
15       let mut _12: usize;                  // in scope 0 at $DIR/slice_filter.rs:+0:52: +0:53
16       let mut _13: usize;                  // in scope 0 at $DIR/slice_filter.rs:+0:57: +0:58
17       let mut _14: bool;                   // in scope 0 at $DIR/slice_filter.rs:+0:62: +0:78
18       let mut _15: bool;                   // in scope 0 at $DIR/slice_filter.rs:+0:62: +0:68
19       let mut _16: usize;                  // in scope 0 at $DIR/slice_filter.rs:+0:62: +0:63
20       let mut _17: usize;                  // in scope 0 at $DIR/slice_filter.rs:+0:67: +0:68
21       let mut _18: bool;                   // in scope 0 at $DIR/slice_filter.rs:+0:72: +0:78
22       let mut _19: usize;                  // in scope 0 at $DIR/slice_filter.rs:+0:72: +0:73
23       let mut _20: usize;                  // in scope 0 at $DIR/slice_filter.rs:+0:77: +0:78
24       let mut _21: &(usize, usize, usize, usize); // in scope 0 at $DIR/slice_filter.rs:+0:26: +0:40
25       let mut _22: &(usize, usize, usize, usize); // in scope 0 at $DIR/slice_filter.rs:+0:26: +0:40
26       let mut _23: &(usize, usize, usize, usize); // in scope 0 at $DIR/slice_filter.rs:+0:26: +0:40
27       let mut _24: &(usize, usize, usize, usize); // in scope 0 at $DIR/slice_filter.rs:+0:26: +0:40
28       scope 1 {
29           debug a => _3;                   // in scope 1 at $DIR/slice_filter.rs:+0:29: +0:30
30           debug b => _4;                   // in scope 1 at $DIR/slice_filter.rs:+0:32: +0:33
31           debug c => _5;                   // in scope 1 at $DIR/slice_filter.rs:+0:35: +0:36
32           debug d => _6;                   // in scope 1 at $DIR/slice_filter.rs:+0:38: +0:39
33       }
34   
35       bb0: {
36 -         StorageLive(_3);                 // scope 0 at $DIR/slice_filter.rs:+0:29: +0:30
37           _21 = deref_copy (*_2);          // scope 0 at $DIR/slice_filter.rs:+0:29: +0:30
38           _3 = ((*_21).0: usize);          // scope 0 at $DIR/slice_filter.rs:+0:29: +0:30
39 -         StorageLive(_4);                 // scope 0 at $DIR/slice_filter.rs:+0:32: +0:33
40           _22 = deref_copy (*_2);          // scope 0 at $DIR/slice_filter.rs:+0:32: +0:33
41           _4 = ((*_22).1: usize);          // scope 0 at $DIR/slice_filter.rs:+0:32: +0:33
42 -         StorageLive(_5);                 // scope 0 at $DIR/slice_filter.rs:+0:35: +0:36
43           _23 = deref_copy (*_2);          // scope 0 at $DIR/slice_filter.rs:+0:35: +0:36
44           _5 = ((*_23).2: usize);          // scope 0 at $DIR/slice_filter.rs:+0:35: +0:36
45 -         StorageLive(_6);                 // scope 0 at $DIR/slice_filter.rs:+0:38: +0:39
46           _24 = deref_copy (*_2);          // scope 0 at $DIR/slice_filter.rs:+0:38: +0:39
47           _6 = ((*_24).3: usize);          // scope 0 at $DIR/slice_filter.rs:+0:38: +0:39
48           StorageLive(_7);                 // scope 1 at $DIR/slice_filter.rs:+0:42: +0:58
49           StorageLive(_8);                 // scope 1 at $DIR/slice_filter.rs:+0:42: +0:48
50 -         StorageLive(_9);                 // scope 1 at $DIR/slice_filter.rs:+0:42: +0:43
51 -         _9 = _3;                         // scope 1 at $DIR/slice_filter.rs:+0:42: +0:43
52 -         StorageLive(_10);                // scope 1 at $DIR/slice_filter.rs:+0:47: +0:48
53 -         _10 = _5;                        // scope 1 at $DIR/slice_filter.rs:+0:47: +0:48
54 -         _8 = Le(move _9, move _10);      // scope 1 at $DIR/slice_filter.rs:+0:42: +0:48
55 -         StorageDead(_10);                // scope 1 at $DIR/slice_filter.rs:+0:47: +0:48
56 -         StorageDead(_9);                 // scope 1 at $DIR/slice_filter.rs:+0:47: +0:48
57 +         _8 = Le(_3, _5);                 // scope 1 at $DIR/slice_filter.rs:+0:42: +0:48
58           switchInt(move _8) -> [0: bb4, otherwise: bb5]; // scope 1 at $DIR/slice_filter.rs:+0:42: +0:58
59       }
60   
61       bb1: {
62           _0 = const true;                 // scope 1 at $DIR/slice_filter.rs:+0:42: +0:78
63           goto -> bb3;                     // scope 1 at $DIR/slice_filter.rs:+0:42: +0:78
64       }
65   
66       bb2: {
67           StorageLive(_14);                // scope 1 at $DIR/slice_filter.rs:+0:62: +0:78
68           StorageLive(_15);                // scope 1 at $DIR/slice_filter.rs:+0:62: +0:68
69 -         StorageLive(_16);                // scope 1 at $DIR/slice_filter.rs:+0:62: +0:63
70 -         _16 = _5;                        // scope 1 at $DIR/slice_filter.rs:+0:62: +0:63
71 -         StorageLive(_17);                // scope 1 at $DIR/slice_filter.rs:+0:67: +0:68
72 -         _17 = _3;                        // scope 1 at $DIR/slice_filter.rs:+0:67: +0:68
73 -         _15 = Le(move _16, move _17);    // scope 1 at $DIR/slice_filter.rs:+0:62: +0:68
74 -         StorageDead(_17);                // scope 1 at $DIR/slice_filter.rs:+0:67: +0:68
75 -         StorageDead(_16);                // scope 1 at $DIR/slice_filter.rs:+0:67: +0:68
76 +         _15 = Le(_5, _3);                // scope 1 at $DIR/slice_filter.rs:+0:62: +0:68
77           switchInt(move _15) -> [0: bb6, otherwise: bb7]; // scope 1 at $DIR/slice_filter.rs:+0:62: +0:78
78       }
79   
80       bb3: {
81           StorageDead(_14);                // scope 1 at $DIR/slice_filter.rs:+0:77: +0:78
82           StorageDead(_7);                 // scope 1 at $DIR/slice_filter.rs:+0:77: +0:78
83 -         StorageDead(_6);                 // scope 0 at $DIR/slice_filter.rs:+0:77: +0:78
84 -         StorageDead(_5);                 // scope 0 at $DIR/slice_filter.rs:+0:77: +0:78
85 -         StorageDead(_4);                 // scope 0 at $DIR/slice_filter.rs:+0:77: +0:78
86 -         StorageDead(_3);                 // scope 0 at $DIR/slice_filter.rs:+0:77: +0:78
87           return;                          // scope 0 at $DIR/slice_filter.rs:+0:78: +0:78
88       }
89   
90       bb4: {
91           _7 = const false;                // scope 1 at $DIR/slice_filter.rs:+0:42: +0:58
92           StorageDead(_11);                // scope 1 at $DIR/slice_filter.rs:+0:57: +0:58
93           StorageDead(_8);                 // scope 1 at $DIR/slice_filter.rs:+0:57: +0:58
94           goto -> bb2;                     // scope 1 at $DIR/slice_filter.rs:+0:42: +0:58
95       }
96   
97       bb5: {
98           StorageLive(_11);                // scope 1 at $DIR/slice_filter.rs:+0:52: +0:58
99 -         StorageLive(_12);                // scope 1 at $DIR/slice_filter.rs:+0:52: +0:53
100 -         _12 = _6;                        // scope 1 at $DIR/slice_filter.rs:+0:52: +0:53
101 -         StorageLive(_13);                // scope 1 at $DIR/slice_filter.rs:+0:57: +0:58
102 -         _13 = _4;                        // scope 1 at $DIR/slice_filter.rs:+0:57: +0:58
103 -         _11 = Le(move _12, move _13);    // scope 1 at $DIR/slice_filter.rs:+0:52: +0:58
104 -         StorageDead(_13);                // scope 1 at $DIR/slice_filter.rs:+0:57: +0:58
105 -         StorageDead(_12);                // scope 1 at $DIR/slice_filter.rs:+0:57: +0:58
106 +         _11 = Le(_6, _4);                // scope 1 at $DIR/slice_filter.rs:+0:52: +0:58
107           _7 = move _11;                   // scope 1 at $DIR/slice_filter.rs:+0:42: +0:58
108           StorageDead(_11);                // scope 1 at $DIR/slice_filter.rs:+0:57: +0:58
109           StorageDead(_8);                 // scope 1 at $DIR/slice_filter.rs:+0:57: +0:58
110           switchInt(move _7) -> [0: bb2, otherwise: bb1]; // scope 1 at $DIR/slice_filter.rs:+0:42: +0:78
111       }
112   
113       bb6: {
114           _14 = const false;               // scope 1 at $DIR/slice_filter.rs:+0:62: +0:78
115           goto -> bb8;                     // scope 1 at $DIR/slice_filter.rs:+0:62: +0:78
116       }
117   
118       bb7: {
119           StorageLive(_18);                // scope 1 at $DIR/slice_filter.rs:+0:72: +0:78
120 -         StorageLive(_19);                // scope 1 at $DIR/slice_filter.rs:+0:72: +0:73
121 -         _19 = _4;                        // scope 1 at $DIR/slice_filter.rs:+0:72: +0:73
122 -         StorageLive(_20);                // scope 1 at $DIR/slice_filter.rs:+0:77: +0:78
123 -         _20 = _6;                        // scope 1 at $DIR/slice_filter.rs:+0:77: +0:78
124 -         _18 = Le(move _19, move _20);    // scope 1 at $DIR/slice_filter.rs:+0:72: +0:78
125 -         StorageDead(_20);                // scope 1 at $DIR/slice_filter.rs:+0:77: +0:78
126 -         StorageDead(_19);                // scope 1 at $DIR/slice_filter.rs:+0:77: +0:78
127 +         _18 = Le(_4, _6);                // scope 1 at $DIR/slice_filter.rs:+0:72: +0:78
128           _14 = move _18;                  // scope 1 at $DIR/slice_filter.rs:+0:62: +0:78
129           goto -> bb8;                     // scope 1 at $DIR/slice_filter.rs:+0:62: +0:78
130       }
131   
132       bb8: {
133           StorageDead(_18);                // scope 1 at $DIR/slice_filter.rs:+0:77: +0:78
134           StorageDead(_15);                // scope 1 at $DIR/slice_filter.rs:+0:77: +0:78
135           _0 = move _14;                   // scope 1 at $DIR/slice_filter.rs:+0:42: +0:78
136           goto -> bb3;                     // scope 1 at $DIR/slice_filter.rs:+0:42: +0:78
137       }
138   }
139