diff options
author | Camil Staps | 2023-11-29 11:26:28 +0100 |
---|---|---|
committer | Camil Staps | 2023-11-29 11:26:28 +0100 |
commit | 4ce6adb6f5dc6623b903853322be726a9f95a3b8 (patch) | |
tree | 927447752dcf46f491be81eabbd68a5d5e06ffa8 /doc/docs | |
parent | WIP on code generation for case expressions (diff) |
Continue with cases WIP: todo is matching code for basic values and adding locals for constructor arguments in a patterncases
Diffstat (limited to 'doc/docs')
-rw-r--r-- | doc/docs/backend/registers.md | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/doc/docs/backend/registers.md b/doc/docs/backend/registers.md index 60a9f20..493cece 100644 --- a/doc/docs/backend/registers.md +++ b/doc/docs/backend/registers.md @@ -8,11 +8,12 @@ The following registers have a special use in the Snug run time system: | # | Name | Standard use | Snug use | |---:|-------|--------------|----------| -| 0 | `$0` | Always zero. | | -| 1 | `$at` | Reserved for the assembler. | | +| 0 | `$0` | Always zero. | --- | +| 1 | `$at` | Reserved for the assembler (`la`). | --- | | 2-3 | `$v0`-`$v1` | Function result, callee-saved(?). | | | 4-7 | `$a0`-`$a3` | Integer argument, caller-saved. | | -| 8-15 | `$t0`-`$t7` | Caller-saved GPR. | | +| 8-9 | `$t0`-`$t1` | Caller-saved GPR. | Temporary values. | +| 10-15 | `$t2`-`$t7` | Caller-saved GPR. | | | 16 | `$s0` | Callee-saved GPR.| [Back pointer](rts.md#evaluation) for printing. | | 17 | `$s1` | id. | [Front pointer](rts.md#evaluation) for printing. | | 18 | `$s2` | id. | [Back pointer](rts.md#evaluation) for evaluation. | @@ -26,4 +27,4 @@ The following registers have a special use in the Snug run time system: | 28 | `$gp` | Global pointer. | Heap pointer. | | 29 | `$sp` | Stack pointer. | | | 30 | `$fp` | Frame pointer / callee-saved GPR. | | -| 31 | `$ra` | Return address / caller-saved GPR. | | +| 31 | `$ra` | Return address / caller-saved GPR. | --- | |