-
Notifications
You must be signed in to change notification settings - Fork 13.7k
Commit c6a9554
Auto merge of #141485 - dianqk:early_otherwise_branch_loop, r=oli-obk
mir-opt: Do not create storage marks in EarlyOtherwiseBranch
Fixes #141212.
The first commit add `StorageDead` by creating new indirect BB that makes CFG more complicated, but I think it's better to just not create storage marks.
r? mir-optFile tree
7 files changed
+64
-47
lines changed- compiler/rustc_mir_transform/src
- tests/mir-opt
7 files changed
+64
-47
lines changedLines changed: 3 additions & 29 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
128 | 128 |
| |
129 | 129 |
| |
130 | 130 |
| |
131 | - | ||
131 | + | ||
132 | 132 |
| |
133 | 133 |
| |
134 | 134 |
| |
135 | 135 |
| |
136 | - | ||
137 | - | ||
138 | - | ||
139 | - | ||
140 | - | ||
141 | 136 |
| |
142 | 137 |
| |
143 | 138 |
| |
144 | 139 |
| |
145 | 140 |
| |
146 | 141 |
| |
147 | - | ||
148 | - | ||
149 | - | ||
150 | - | ||
142 | + | ||
151 | 143 |
| |
152 | - | ||
144 | + | ||
153 | 145 |
| |
154 | 146 |
| |
155 | 147 |
| |
156 | 148 |
| |
157 | 149 |
| |
158 | 150 |
| |
159 | 151 |
| |
160 | - | ||
161 | 152 |
| |
162 | 153 |
| |
163 | 154 |
| |
| |||
200 | 191 |
| |
201 | 192 |
| |
202 | 193 |
| |
203 | - | ||
204 | - | ||
205 | - | ||
206 | - | ||
207 | - | ||
208 | - | ||
209 | - | ||
210 | - | ||
211 | - | ||
212 | - | ||
213 | - | ||
214 | - | ||
215 | - | ||
216 | - | ||
217 | - | ||
218 | - | ||
219 | - | ||
220 | 194 |
| |
221 | 195 |
| |
222 | 196 |
| |
|
Lines changed: 0 additions & 5 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
32 | 32 |
| |
33 | 33 |
| |
34 | 34 |
| |
35 | - | ||
36 | 35 |
| |
37 | - | ||
38 | 36 |
| |
39 | - | ||
40 | 37 |
| |
41 | 38 |
| |
42 | 39 |
| |
43 | 40 |
| |
44 | - | ||
45 | 41 |
| |
46 | 42 |
| |
47 | 43 |
| |
| |||
100 | 96 |
| |
101 | 97 |
| |
102 | 98 |
| |
103 | - | ||
104 | 99 |
| |
105 | 100 |
| |
106 | 101 |
| |
|
Lines changed: 0 additions & 5 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
32 | 32 |
| |
33 | 33 |
| |
34 | 34 |
| |
35 | - | ||
36 | 35 |
| |
37 | - | ||
38 | 36 |
| |
39 | - | ||
40 | 37 |
| |
41 | 38 |
| |
42 | 39 |
| |
43 | 40 |
| |
44 | - | ||
45 | 41 |
| |
46 | 42 |
| |
47 | 43 |
| |
| |||
100 | 96 |
| |
101 | 97 |
| |
102 | 98 |
| |
103 | - | ||
104 | 99 |
| |
105 | 100 |
| |
106 | 101 |
| |
|
Lines changed: 0 additions & 3 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
20 | 20 |
| |
21 | 21 |
| |
22 | 22 |
| |
23 | - | ||
24 | 23 |
| |
25 | 24 |
| |
26 | 25 |
| |
27 | 26 |
| |
28 | 27 |
| |
29 | - | ||
30 | 28 |
| |
31 | 29 |
| |
32 | 30 |
| |
| |||
70 | 68 |
| |
71 | 69 |
| |
72 | 70 |
| |
73 | - | ||
74 | 71 |
| |
75 | 72 |
| |
76 | 73 |
| |
|
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
1 | 1 |
| |
2 | 2 |
| |
3 | 3 |
| |
4 | + | ||
5 | + | ||
6 | + | ||
7 | + | ||
4 | 8 |
| |
5 | 9 |
| |
6 | 10 |
| |
| |||
124 | 128 |
| |
125 | 129 |
| |
126 | 130 |
| |
131 | + | ||
132 | + | ||
133 | + | ||
134 | + | ||
135 | + | ||
136 | + | ||
137 | + | ||
138 | + | ||
139 | + | ||
140 | + | ||
141 | + | ||
142 | + | ||
143 | + | ||
144 | + | ||
145 | + | ||
146 | + | ||
147 | + | ||
148 | + | ||
149 | + | ||
150 | + | ||
151 | + | ||
152 | + | ||
153 | + | ||
154 | + | ||
155 | + | ||
156 | + | ||
157 | + | ||
158 | + | ||
127 | 159 |
| |
128 | 160 |
| |
129 | 161 |
| |
130 | 162 |
| |
131 | 163 |
| |
132 | 164 |
| |
133 | 165 |
| |
166 | + | ||
134 | 167 |
|
Lines changed: 28 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
1 | + | ||
2 | + | ||
3 | + | ||
4 | + | ||
5 | + | ||
6 | + | ||
7 | + | ||
8 | + | ||
9 | + | ||
10 | + | ||
11 | + | ||
12 | + | ||
13 | + | ||
14 | + | ||
15 | + | ||
16 | + | ||
17 | + | ||
18 | + | ||
19 | + | ||
20 | + | ||
21 | + | ||
22 | + | ||
23 | + | ||
24 | + | ||
25 | + | ||
26 | + | ||
27 | + | ||
28 | + |
Lines changed: 0 additions & 5 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
42 | 42 |
| |
43 | 43 |
| |
44 | 44 |
| |
45 | - | ||
46 | 45 |
| |
47 | - | ||
48 | 46 |
| |
49 | - | ||
50 | 47 |
| |
51 | 48 |
| |
52 | 49 |
| |
53 | 50 |
| |
54 | - | ||
55 | 51 |
| |
56 | 52 |
| |
57 | 53 |
| |
| |||
134 | 130 |
| |
135 | 131 |
| |
136 | 132 |
| |
137 | - | ||
138 | 133 |
| |
139 | 134 |
| |
140 | 135 |
| |
|
0 commit comments