Commit d87385f
authored
Rollup merge of rust-lang#57677 - dotdash:locals, r=michaelwoerister
const_eval: Predetermine the layout of all locals when pushing a stack frame
Usually the layout of any locals is required at least three times, once
when it becomes live, once when it is written to, and once it is read
from. By adding a cache for them, we can reduce the number of layout
queries speeding up code that is heavy on const_eval.File tree
4 files changed
+24
-18
lines changed- src/librustc_mir
- interpret
4 files changed
+24
-18
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
72 | 72 | | |
73 | 73 | | |
74 | 74 | | |
| 75 | + | |
75 | 76 | | |
76 | 77 | | |
77 | 78 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
1 | 2 | | |
2 | 3 | | |
3 | 4 | | |
| |||
76 | 77 | | |
77 | 78 | | |
78 | 79 | | |
| 80 | + | |
79 | 81 | | |
80 | 82 | | |
81 | 83 | | |
| |||
290 | 292 | | |
291 | 293 | | |
292 | 294 | | |
293 | | - | |
294 | | - | |
295 | | - | |
| 295 | + | |
| 296 | + | |
| 297 | + | |
| 298 | + | |
| 299 | + | |
| 300 | + | |
| 301 | + | |
| 302 | + | |
| 303 | + | |
296 | 304 | | |
297 | 305 | | |
298 | 306 | | |
| |||
426 | 434 | | |
427 | 435 | | |
428 | 436 | | |
| 437 | + | |
429 | 438 | | |
430 | 439 | | |
431 | 440 | | |
| |||
464 | 473 | | |
465 | 474 | | |
466 | 475 | | |
467 | | - | |
| 476 | + | |
468 | 477 | | |
469 | 478 | | |
470 | 479 | | |
471 | | - | |
| 480 | + | |
472 | 481 | | |
473 | 482 | | |
474 | 483 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
457 | 457 | | |
458 | 458 | | |
459 | 459 | | |
460 | | - | |
461 | | - | |
462 | | - | |
| 460 | + | |
463 | 461 | | |
464 | 462 | | |
465 | 463 | | |
466 | | - | |
467 | 464 | | |
468 | 465 | | |
469 | 466 | | |
470 | | - | |
471 | | - | |
| 467 | + | |
472 | 468 | | |
473 | 469 | | |
474 | 470 | | |
475 | 471 | | |
476 | | - | |
477 | | - | |
| 472 | + | |
478 | 473 | | |
479 | 474 | | |
480 | 475 | | |
481 | | - | |
482 | 476 | | |
483 | 477 | | |
484 | 478 | | |
485 | 479 | | |
486 | | - | |
| 480 | + | |
487 | 481 | | |
488 | 482 | | |
489 | | - | |
| 483 | + | |
490 | 484 | | |
491 | 485 | | |
492 | 486 | | |
| |||
510 | 504 | | |
511 | 505 | | |
512 | 506 | | |
513 | | - | |
| 507 | + | |
514 | 508 | | |
515 | 509 | | |
516 | 510 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
314 | 314 | | |
315 | 315 | | |
316 | 316 | | |
317 | | - | |
| 317 | + | |
318 | 318 | | |
319 | 319 | | |
320 | 320 | | |
321 | 321 | | |
322 | 322 | | |
323 | 323 | | |
| 324 | + | |
324 | 325 | | |
325 | 326 | | |
326 | 327 | | |
| |||
339 | 340 | | |
340 | 341 | | |
341 | 342 | | |
| 343 | + | |
342 | 344 | | |
343 | 345 | | |
344 | 346 | | |
| |||
0 commit comments