|
50 | 50 | + Deinit(_4); // scope 2 at $DIR/inline-generator.rs:15:5: 15:41 |
51 | 51 | + discriminant(_4) = 0; // scope 2 at $DIR/inline-generator.rs:15:5: 15:41 |
52 | 52 | _3 = &mut _4; // scope 0 at $DIR/inline-generator.rs:+1:23: +1:31 |
53 | | -- _2 = Pin::<&mut [generator@$DIR/inline-generator.rs:15:5: 15:8]>::new(move _3) -> [return: bb2, unwind: bb4]; // scope 0 at $DIR/inline-generator.rs:+1:14: +1:32 |
| 53 | +- _2 = Pin::<&mut [generator@$DIR/inline-generator.rs:15:5: 15:8]>::new(move _3) -> [return: bb2, unwind: bb7]; // scope 0 at $DIR/inline-generator.rs:+1:14: +1:32 |
54 | 54 | - // mir::Constant |
55 | 55 | - // + span: $DIR/inline-generator.rs:9:14: 9:22 |
56 | 56 | - // + user_ty: UserType(0) |
|
67 | 67 | + StorageDead(_6); // scope 5 at $SRC_DIR/core/src/pin.rs:LL:COL |
68 | 68 | + StorageDead(_5); // scope 4 at $SRC_DIR/core/src/pin.rs:LL:COL |
69 | 69 | StorageDead(_3); // scope 0 at $DIR/inline-generator.rs:+1:31: +1:32 |
70 | | -- _1 = <[generator@$DIR/inline-generator.rs:15:5: 15:8] as Generator<bool>>::resume(move _2, const false) -> [return: bb3, unwind: bb4]; // scope 0 at $DIR/inline-generator.rs:+1:14: +1:46 |
| 70 | +- _1 = <[generator@$DIR/inline-generator.rs:15:5: 15:8] as Generator<bool>>::resume(move _2, const false) -> [return: bb3, unwind: bb7]; // scope 0 at $DIR/inline-generator.rs:+1:14: +1:46 |
71 | 71 | - // mir::Constant |
72 | 72 | - // + span: $DIR/inline-generator.rs:9:33: 9:39 |
73 | 73 | - // + literal: Const { ty: for<'r> fn(Pin<&'r mut [generator@$DIR/inline-generator.rs:15:5: 15:8]>, bool) -> GeneratorState<<[generator@$DIR/inline-generator.rs:15:5: 15:8] as Generator<bool>>::Yield, <[generator@$DIR/inline-generator.rs:15:5: 15:8] as Generator<bool>>::Return> {<[generator@$DIR/inline-generator.rs:15:5: 15:8] as Generator<bool>>::resume}, val: Value(<ZST>) } |
|
77 | 77 | + StorageLive(_11); // scope 0 at $DIR/inline-generator.rs:+1:14: +1:46 |
78 | 78 | + _13 = deref_copy (_2.0: &mut [generator@$DIR/inline-generator.rs:15:5: 15:8]); // scope 6 at $DIR/inline-generator.rs:15:5: 15:8 |
79 | 79 | + _12 = discriminant((*_13)); // scope 6 at $DIR/inline-generator.rs:15:5: 15:8 |
80 | | -+ switchInt(move _12) -> [0_u32: bb3, 1_u32: bb8, 3_u32: bb7, otherwise: bb9]; // scope 6 at $DIR/inline-generator.rs:15:5: 15:8 |
| 80 | ++ switchInt(move _12) -> [0_u32: bb7, 1_u32: bb12, 3_u32: bb11, otherwise: bb13]; // scope 6 at $DIR/inline-generator.rs:15:5: 15:8 |
81 | 81 | } |
82 | 82 |
|
83 | 83 | - bb3: { |
|
86 | 86 | + StorageDead(_10); // scope 0 at $DIR/inline-generator.rs:+1:14: +1:46 |
87 | 87 | + StorageDead(_7); // scope 0 at $DIR/inline-generator.rs:+1:14: +1:46 |
88 | 88 | StorageDead(_2); // scope 0 at $DIR/inline-generator.rs:+1:45: +1:46 |
| 89 | +- drop(_4) -> [return: bb4, unwind: bb6]; // scope 0 at $DIR/inline-generator.rs:+1:46: +1:47 |
| 90 | ++ drop(_4) -> [return: bb2, unwind: bb4]; // scope 0 at $DIR/inline-generator.rs:+1:46: +1:47 |
| 91 | + } |
| 92 | + |
| 93 | +- bb4: { |
| 94 | ++ bb2: { |
89 | 95 | StorageDead(_4); // scope 0 at $DIR/inline-generator.rs:+1:46: +1:47 |
90 | 96 | _0 = const (); // scope 0 at $DIR/inline-generator.rs:+0:11: +2:2 |
| 97 | +- drop(_1) -> [return: bb5, unwind: bb8]; // scope 0 at $DIR/inline-generator.rs:+2:1: +2:2 |
| 98 | ++ drop(_1) -> [return: bb3, unwind: bb6]; // scope 0 at $DIR/inline-generator.rs:+2:1: +2:2 |
| 99 | + } |
| 100 | + |
| 101 | +- bb5: { |
| 102 | ++ bb3: { |
91 | 103 | StorageDead(_1); // scope 0 at $DIR/inline-generator.rs:+2:1: +2:2 |
92 | 104 | return; // scope 0 at $DIR/inline-generator.rs:+2:2: +2:2 |
93 | 105 | } |
94 | 106 |
|
95 | | -- bb4 (cleanup): { |
96 | | -+ bb2 (cleanup): { |
| 107 | +- bb6 (cleanup): { |
| 108 | +- drop(_1) -> bb8; // scope 0 at $DIR/inline-generator.rs:+2:1: +2:2 |
| 109 | ++ bb4 (cleanup): { |
| 110 | ++ drop(_1) -> bb6; // scope 0 at $DIR/inline-generator.rs:+2:1: +2:2 |
| 111 | + } |
| 112 | + |
| 113 | +- bb7 (cleanup): { |
| 114 | +- drop(_4) -> bb8; // scope 0 at $DIR/inline-generator.rs:+1:46: +1:47 |
| 115 | ++ bb5 (cleanup): { |
| 116 | ++ drop(_4) -> bb6; // scope 0 at $DIR/inline-generator.rs:+1:46: +1:47 |
| 117 | + } |
| 118 | + |
| 119 | +- bb8 (cleanup): { |
| 120 | ++ bb6 (cleanup): { |
97 | 121 | resume; // scope 0 at $DIR/inline-generator.rs:+0:1: +2:2 |
98 | 122 | + } |
99 | 123 | + |
100 | | -+ bb3: { |
| 124 | ++ bb7: { |
101 | 125 | + _11 = move _7; // scope 6 at $DIR/inline-generator.rs:15:5: 15:8 |
102 | 126 | + StorageLive(_8); // scope 6 at $DIR/inline-generator.rs:15:17: 15:39 |
103 | 127 | + StorageLive(_9); // scope 6 at $DIR/inline-generator.rs:15:20: 15:21 |
104 | 128 | + _9 = _11; // scope 6 at $DIR/inline-generator.rs:15:20: 15:21 |
105 | | -+ switchInt(move _9) -> [false: bb5, otherwise: bb4]; // scope 6 at $DIR/inline-generator.rs:15:20: 15:21 |
| 129 | ++ switchInt(move _9) -> [false: bb9, otherwise: bb8]; // scope 6 at $DIR/inline-generator.rs:15:20: 15:21 |
106 | 130 | + } |
107 | 131 | + |
108 | | -+ bb4: { |
| 132 | ++ bb8: { |
109 | 133 | + _8 = const 7_i32; // scope 6 at $DIR/inline-generator.rs:15:24: 15:25 |
110 | | -+ goto -> bb6; // scope 6 at $DIR/inline-generator.rs:15:17: 15:39 |
| 134 | ++ goto -> bb10; // scope 6 at $DIR/inline-generator.rs:15:17: 15:39 |
111 | 135 | + } |
112 | 136 | + |
113 | | -+ bb5: { |
| 137 | ++ bb9: { |
114 | 138 | + _8 = const 13_i32; // scope 6 at $DIR/inline-generator.rs:15:35: 15:37 |
115 | | -+ goto -> bb6; // scope 6 at $DIR/inline-generator.rs:15:17: 15:39 |
| 139 | ++ goto -> bb10; // scope 6 at $DIR/inline-generator.rs:15:17: 15:39 |
116 | 140 | + } |
117 | 141 | + |
118 | | -+ bb6: { |
| 142 | ++ bb10: { |
119 | 143 | + StorageDead(_9); // scope 6 at $DIR/inline-generator.rs:15:38: 15:39 |
120 | 144 | + Deinit(_1); // scope 6 at $DIR/inline-generator.rs:15:11: 15:39 |
121 | 145 | + ((_1 as Yielded).0: i32) = move _8; // scope 6 at $DIR/inline-generator.rs:15:11: 15:39 |
|
125 | 149 | + goto -> bb1; // scope 0 at $DIR/inline-generator.rs:15:11: 15:39 |
126 | 150 | + } |
127 | 151 | + |
128 | | -+ bb7: { |
| 152 | ++ bb11: { |
129 | 153 | + StorageLive(_8); // scope 6 at $DIR/inline-generator.rs:15:5: 15:8 |
130 | 154 | + _10 = move _7; // scope 6 at $DIR/inline-generator.rs:15:5: 15:8 |
131 | 155 | + StorageDead(_8); // scope 6 at $DIR/inline-generator.rs:15:38: 15:39 |
|
137 | 161 | + goto -> bb1; // scope 0 at $DIR/inline-generator.rs:15:8: 15:8 |
138 | 162 | + } |
139 | 163 | + |
140 | | -+ bb8: { |
141 | | -+ assert(const false, "generator resumed after completion") -> [success: bb8, unwind: bb2]; // scope 6 at $DIR/inline-generator.rs:15:5: 15:8 |
| 164 | ++ bb12: { |
| 165 | ++ assert(const false, "generator resumed after completion") -> [success: bb12, unwind: bb5]; // scope 6 at $DIR/inline-generator.rs:15:5: 15:8 |
142 | 166 | + } |
143 | 167 | + |
144 | | -+ bb9: { |
| 168 | ++ bb13: { |
145 | 169 | + unreachable; // scope 6 at $DIR/inline-generator.rs:15:5: 15:8 |
146 | 170 | } |
147 | 171 | } |
|
0 commit comments