This repository was archived by the owner on May 28, 2025. It is now read-only.
Commit d0155dc
committed
Auto merge of rust-lang#119031 - Nadrieril:two-phase-match-lowering, r=<try>
[Experiment] Play with match lowering
Match lowering to MIR has the reputation of being the most intricate piece of the compiler, and after banging my head on it for a bit I sure hope there isn't anything more intricate somewhere else. It's good quality code but I hope to unentangle it. This PR is me wrestling with it and asking `rustc-timer` for its opinion.
r? `@ghost`File tree
4 files changed
+128
-116
lines changed- compiler/rustc_mir_build/src/build/matches
- tests/mir-opt
4 files changed
+128
-116
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1063 | 1063 | | |
1064 | 1064 | | |
1065 | 1065 | | |
| 1066 | + | |
| 1067 | + | |
| 1068 | + | |
| 1069 | + | |
| 1070 | + | |
| 1071 | + | |
| 1072 | + | |
| 1073 | + | |
| 1074 | + | |
| 1075 | + | |
| 1076 | + | |
| 1077 | + | |
| 1078 | + | |
| 1079 | + | |
| 1080 | + | |
| 1081 | + | |
| 1082 | + | |
| 1083 | + | |
| 1084 | + | |
| 1085 | + | |
| 1086 | + | |
1066 | 1087 | | |
1067 | 1088 | | |
1068 | 1089 | | |
| |||
1085 | 1106 | | |
1086 | 1107 | | |
1087 | 1108 | | |
1088 | | - | |
| 1109 | + | |
1089 | 1110 | | |
1090 | 1111 | | |
1091 | 1112 | | |
| |||
1321 | 1342 | | |
1322 | 1343 | | |
1323 | 1344 | | |
1324 | | - | |
| 1345 | + | |
1325 | 1346 | | |
1326 | 1347 | | |
1327 | 1348 | | |
| |||
1389 | 1410 | | |
1390 | 1411 | | |
1391 | 1412 | | |
1392 | | - | |
1393 | | - | |
1394 | | - | |
1395 | | - | |
1396 | | - | |
1397 | | - | |
1398 | | - | |
1399 | | - | |
| 1413 | + | |
| 1414 | + | |
1400 | 1415 | | |
1401 | 1416 | | |
1402 | 1417 | | |
| |||
1449 | 1464 | | |
1450 | 1465 | | |
1451 | 1466 | | |
1452 | | - | |
| 1467 | + | |
1453 | 1468 | | |
1454 | 1469 | | |
1455 | 1470 | | |
1456 | | - | |
| 1471 | + | |
1457 | 1472 | | |
1458 | 1473 | | |
1459 | 1474 | | |
| |||
1467 | 1482 | | |
1468 | 1483 | | |
1469 | 1484 | | |
1470 | | - | |
1471 | 1485 | | |
1472 | 1486 | | |
1473 | 1487 | | |
| |||
1626 | 1640 | | |
1627 | 1641 | | |
1628 | 1642 | | |
1629 | | - | |
| 1643 | + | |
1630 | 1644 | | |
1631 | | - | |
1632 | | - | |
1633 | 1645 | | |
1634 | | - | |
1635 | | - | |
1636 | 1646 | | |
1637 | | - | |
| 1647 | + | |
1638 | 1648 | | |
1639 | 1649 | | |
1640 | 1650 | | |
| |||
1673 | 1683 | | |
1674 | 1684 | | |
1675 | 1685 | | |
1676 | | - | |
| 1686 | + | |
1677 | 1687 | | |
1678 | 1688 | | |
1679 | 1689 | | |
| |||
1699 | 1709 | | |
1700 | 1710 | | |
1701 | 1711 | | |
1702 | | - | |
1703 | | - | |
1704 | | - | |
1705 | | - | |
1706 | | - | |
1707 | | - | |
1708 | | - | |
1709 | | - | |
1710 | | - | |
1711 | | - | |
1712 | | - | |
1713 | | - | |
1714 | | - | |
1715 | | - | |
1716 | | - | |
1717 | | - | |
1718 | | - | |
1719 | | - | |
1720 | | - | |
1721 | | - | |
1722 | | - | |
1723 | | - | |
1724 | | - | |
1725 | | - | |
1726 | | - | |
1727 | | - | |
1728 | | - | |
1729 | | - | |
1730 | | - | |
1731 | | - | |
1732 | | - | |
1733 | | - | |
1734 | | - | |
1735 | | - | |
1736 | | - | |
1737 | | - | |
1738 | | - | |
1739 | | - | |
1740 | | - | |
1741 | | - | |
1742 | | - | |
1743 | | - | |
1744 | | - | |
1745 | | - | |
1746 | | - | |
1747 | | - | |
1748 | | - | |
1749 | | - | |
1750 | | - | |
1751 | | - | |
1752 | | - | |
1753 | | - | |
1754 | | - | |
| 1712 | + | |
| 1713 | + | |
| 1714 | + | |
| 1715 | + | |
| 1716 | + | |
| 1717 | + | |
1755 | 1718 | | |
1756 | 1719 | | |
1757 | 1720 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
8 | 8 | | |
9 | 9 | | |
10 | 10 | | |
11 | | - | |
| 11 | + | |
12 | 12 | | |
13 | 13 | | |
14 | 14 | | |
| |||
23 | 23 | | |
24 | 24 | | |
25 | 25 | | |
| 26 | + | |
| 27 | + | |
26 | 28 | | |
27 | 29 | | |
28 | 30 | | |
| |||
147 | 149 | | |
148 | 150 | | |
149 | 151 | | |
150 | | - | |
| 152 | + | |
151 | 153 | | |
152 | 154 | | |
153 | 155 | | |
154 | 156 | | |
155 | 157 | | |
156 | | - | |
157 | | - | |
158 | | - | |
| 158 | + | |
| 159 | + | |
| 160 | + | |
159 | 161 | | |
| 162 | + | |
| 163 | + | |
| 164 | + | |
| 165 | + | |
| 166 | + | |
| 167 | + | |
| 168 | + | |
| 169 | + | |
| 170 | + | |
| 171 | + | |
| 172 | + | |
| 173 | + | |
| 174 | + | |
| 175 | + | |
| 176 | + | |
| 177 | + | |
| 178 | + | |
| 179 | + | |
| 180 | + | |
| 181 | + | |
| 182 | + | |
| 183 | + | |
| 184 | + | |
| 185 | + | |
| 186 | + | |
| 187 | + | |
| 188 | + | |
| 189 | + | |
| 190 | + | |
| 191 | + | |
| 192 | + | |
| 193 | + | |
| 194 | + | |
| 195 | + | |
| 196 | + | |
| 197 | + | |
| 198 | + | |
| 199 | + | |
| 200 | + | |
| 201 | + | |
| 202 | + | |
| 203 | + | |
| 204 | + | |
| 205 | + | |
| 206 | + | |
| 207 | + | |
| 208 | + | |
| 209 | + | |
| 210 | + | |
| 211 | + | |
| 212 | + | |
| 213 | + | |
| 214 | + | |
| 215 | + | |
| 216 | + | |
| 217 | + | |
| 218 | + | |
| 219 | + | |
| 220 | + | |
160 | 221 | | |
161 | 222 | | |
162 | 223 | | |
163 | 224 | | |
164 | 225 | | |
165 | 226 | | |
166 | 227 | | |
167 | | - | |
168 | 228 | | |
169 | 229 | | |
170 | 230 | | |
| |||
210 | 270 | | |
211 | 271 | | |
212 | 272 | | |
213 | | - | |
214 | 273 | | |
215 | 274 | | |
216 | 275 | | |
| |||
280 | 339 | | |
281 | 340 | | |
282 | 341 | | |
283 | | - | |
| 342 | + | |
284 | 343 | | |
285 | 344 | | |
286 | 345 | | |
| |||
291 | 350 | | |
292 | 351 | | |
293 | 352 | | |
294 | | - | |
295 | | - | |
296 | | - | |
297 | | - | |
298 | | - | |
299 | | - | |
300 | | - | |
301 | | - | |
302 | | - | |
| 353 | + | |
| 354 | + | |
303 | 355 | | |
304 | 356 | | |
305 | 357 | | |
| |||
311 | 363 | | |
312 | 364 | | |
313 | 365 | | |
314 | | - | |
315 | 366 | | |
316 | 367 | | |
317 | 368 | | |
| |||
341 | 392 | | |
342 | 393 | | |
343 | 394 | | |
344 | | - | |
345 | | - | |
346 | 395 | | |
347 | 396 | | |
348 | 397 | | |
| |||
406 | 455 | | |
407 | 456 | | |
408 | 457 | | |
409 | | - | |
| 458 | + | |
410 | 459 | | |
411 | 460 | | |
412 | 461 | | |
| |||
531 | 580 | | |
532 | 581 | | |
533 | 582 | | |
534 | | - | |
| 583 | + | |
535 | 584 | | |
536 | 585 | | |
537 | 586 | | |
| |||
Lines changed: 7 additions & 7 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
38 | 38 | | |
39 | 39 | | |
40 | 40 | | |
41 | | - | |
| 41 | + | |
42 | 42 | | |
43 | 43 | | |
44 | 44 | | |
45 | | - | |
46 | | - | |
| 45 | + | |
| 46 | + | |
47 | 47 | | |
48 | 48 | | |
49 | 49 | | |
50 | | - | |
51 | | - | |
| 50 | + | |
| 51 | + | |
52 | 52 | | |
53 | 53 | | |
54 | 54 | | |
55 | | - | |
56 | | - | |
| 55 | + | |
| 56 | + | |
57 | 57 | | |
58 | 58 | | |
59 | 59 | | |
| |||
0 commit comments