Commit 54f074e
authored
Re-introduce optional dedicated scratch registers (#117)
* Re-introduce optional dedicated scratch registers
Dedicated scratch registers used for resolving move cycles were removed
in #51 and replaced with an algorithm to automatically allocate a
scratch register as needed.
However in many cases, a client will already have a non-allocatable
scratch register available for things like extended jumps (see #91). It
makes sense to re-use this register for regalloc than potentially
spilling an existing register.
* Clarify comment1 parent 34a9ae7 commit 54f074e
3 files changed
Lines changed: 30 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
662 | 662 | | |
663 | 663 | | |
664 | 664 | | |
| 665 | + | |
665 | 666 | | |
666 | 667 | | |
667 | 668 | | |
668 | 669 | | |
669 | 670 | | |
| 671 | + | |
670 | 672 | | |
671 | 673 | | |
672 | 674 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
986 | 986 | | |
987 | 987 | | |
988 | 988 | | |
| 989 | + | |
| 990 | + | |
| 991 | + | |
989 | 992 | | |
990 | 993 | | |
991 | 994 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1326 | 1326 | | |
1327 | 1327 | | |
1328 | 1328 | | |
| 1329 | + | |
| 1330 | + | |
| 1331 | + | |
1329 | 1332 | | |
1330 | 1333 | | |
1331 | 1334 | | |
1332 | 1335 | | |
1333 | 1336 | | |
1334 | 1337 | | |
| 1338 | + | |
| 1339 | + | |
| 1340 | + | |
1335 | 1341 | | |
1336 | 1342 | | |
| 1343 | + | |
| 1344 | + | |
| 1345 | + | |
| 1346 | + | |
| 1347 | + | |
| 1348 | + | |
| 1349 | + | |
| 1350 | + | |
| 1351 | + | |
| 1352 | + | |
| 1353 | + | |
| 1354 | + | |
| 1355 | + | |
| 1356 | + | |
| 1357 | + | |
| 1358 | + | |
| 1359 | + | |
1337 | 1360 | | |
1338 | 1361 | | |
1339 | 1362 | | |
1340 | 1363 | | |
1341 | | - | |
| 1364 | + | |
| 1365 | + | |
1342 | 1366 | | |
1343 | 1367 | | |
1344 | 1368 | | |
| |||
0 commit comments