|
7 | 7 | let mut _2: std::pin::Pin<&mut {generator@$DIR/inline_generator.rs:16:5: 16:8}>;
|
8 | 8 | let mut _3: &mut {generator@$DIR/inline_generator.rs:16:5: 16:8};
|
9 | 9 | let mut _4: {generator@$DIR/inline_generator.rs:16:5: 16:8};
|
10 |
| -+ let mut _6: bool; |
| 10 | ++ let mut _5: bool; |
11 | 11 | scope 1 {
|
12 | 12 | debug _r => _1;
|
13 | 13 | }
|
14 | 14 | + scope 2 (inlined g) {
|
15 |
| -+ let mut _5: {generator@$DIR/inline_generator.rs:16:5: 16:8}; |
16 | 15 | + }
|
17 | 16 | + scope 3 (inlined Pin::<&mut {generator@$DIR/inline_generator.rs:16:5: 16:8}>::new) {
|
18 | 17 | + debug pointer => _3;
|
|
23 | 22 | + }
|
24 | 23 | + }
|
25 | 24 | + scope 6 (inlined g::{closure#0}) {
|
26 |
| -+ debug a => _6; |
27 |
| -+ let mut _7: &mut {generator@$DIR/inline_generator.rs:16:5: 16:8}; |
28 |
| -+ let mut _8: u32; |
29 |
| -+ let mut _9: i32; |
| 25 | ++ debug a => _5; |
| 26 | ++ let mut _6: &mut {generator@$DIR/inline_generator.rs:16:5: 16:8}; |
| 27 | ++ let mut _7: u32; |
| 28 | ++ let mut _8: i32; |
30 | 29 | + }
|
31 | 30 |
|
32 | 31 | bb0: {
|
|
38 | 37 | - }
|
39 | 38 | -
|
40 | 39 | - bb1: {
|
41 |
| -+ StorageLive(_5); |
42 |
| -+ _5 = {generator@$DIR/inline_generator.rs:16:5: 16:8 (#0)}; |
43 |
| -+ _4 = move (_5 as subtype {generator@$DIR/inline_generator.rs:16:5: 16:8}); |
44 |
| -+ StorageDead(_5); |
| 40 | ++ _4 = {generator@$DIR/inline_generator.rs:16:5: 16:8 (#0)}; |
45 | 41 | _3 = &mut _4;
|
46 | 42 | - _2 = Pin::<&mut {generator@$DIR/inline_generator.rs:16:5: 16:8}>::new(move _3) -> [return: bb2, unwind: bb5];
|
47 | 43 | - }
|
|
50 | 46 | + _2 = Pin::<&mut {generator@$DIR/inline_generator.rs:16:5: 16:8}> { pointer: move _3 };
|
51 | 47 | StorageDead(_3);
|
52 | 48 | - _1 = <{generator@$DIR/inline_generator.rs:16:5: 16:8} as Generator<bool>>::resume(move _2, const false) -> [return: bb3, unwind: bb5];
|
53 |
| -+ StorageLive(_6); |
54 |
| -+ _6 = const false; |
55 |
| -+ _7 = (_2.0: &mut {generator@$DIR/inline_generator.rs:16:5: 16:8}); |
56 |
| -+ _8 = discriminant((*_7)); |
57 |
| -+ switchInt(move _8) -> [0: bb5, 1: bb9, 3: bb10, otherwise: bb11]; |
| 49 | ++ StorageLive(_5); |
| 50 | ++ _5 = const false; |
| 51 | ++ _6 = (_2.0: &mut {generator@$DIR/inline_generator.rs:16:5: 16:8}); |
| 52 | ++ _7 = discriminant((*_6)); |
| 53 | ++ switchInt(move _7) -> [0: bb5, 1: bb9, 3: bb10, otherwise: bb11]; |
58 | 54 | }
|
59 | 55 |
|
60 | 56 | - bb3: {
|
61 | 57 | + bb1: {
|
62 |
| -+ StorageDead(_6); |
| 58 | ++ StorageDead(_5); |
63 | 59 | StorageDead(_2);
|
64 | 60 | - drop(_4) -> [return: bb4, unwind: bb6];
|
65 | 61 | + drop(_4) -> [return: bb2, unwind: bb4];
|
|
85 | 81 | + }
|
86 | 82 | +
|
87 | 83 | + bb5: {
|
88 |
| -+ StorageLive(_9); |
89 |
| -+ switchInt(_6) -> [0: bb6, otherwise: bb7]; |
| 84 | ++ StorageLive(_8); |
| 85 | ++ switchInt(_5) -> [0: bb6, otherwise: bb7]; |
90 | 86 | + }
|
91 | 87 | +
|
92 | 88 | + bb6: {
|
93 |
| -+ _9 = const 13_i32; |
| 89 | ++ _8 = const 13_i32; |
94 | 90 | + goto -> bb8;
|
95 | 91 | + }
|
96 | 92 | +
|
97 | 93 | + bb7: {
|
98 |
| -+ _9 = const 7_i32; |
| 94 | ++ _8 = const 7_i32; |
99 | 95 | + goto -> bb8;
|
100 | 96 | + }
|
101 | 97 | +
|
102 | 98 | + bb8: {
|
103 |
| -+ _1 = GeneratorState::<i32, bool>::Yielded(move _9); |
104 |
| -+ discriminant((*_7)) = 3; |
| 99 | ++ _1 = GeneratorState::<i32, bool>::Yielded(move _8); |
| 100 | ++ discriminant((*_6)) = 3; |
105 | 101 | + goto -> bb1;
|
106 | 102 | + }
|
107 | 103 | +
|
|
110 | 106 | + }
|
111 | 107 | +
|
112 | 108 | + bb10: {
|
113 |
| -+ StorageLive(_9); |
114 |
| -+ StorageDead(_9); |
115 |
| -+ _1 = GeneratorState::<i32, bool>::Complete(_6); |
116 |
| -+ discriminant((*_7)) = 1; |
| 109 | ++ StorageLive(_8); |
| 110 | ++ StorageDead(_8); |
| 111 | ++ _1 = GeneratorState::<i32, bool>::Complete(_5); |
| 112 | ++ discriminant((*_6)) = 1; |
117 | 113 | + goto -> bb1;
|
118 | 114 | + }
|
119 | 115 | +
|
|
0 commit comments