diff options
author | Camil Staps | 2016-09-19 12:39:58 +0200 |
---|---|---|
committer | Camil Staps | 2016-09-19 12:39:58 +0200 |
commit | b2821c7e9f3e78eb0feb26a563f9a66f1c8cc39a (patch) | |
tree | 8cac5a7504ec57021b17bef3de43f0d85a7d5dc8 /log.md | |
parent | Log 2016-09-18: vim plugin, question (diff) |
Log 09-19
Diffstat (limited to 'log.md')
-rw-r--r-- | log.md | 11 |
1 files changed, 10 insertions, 1 deletions
@@ -24,4 +24,13 @@ Is there an interface to get an auxiliary register in the code generator? For example, to swap to registers a third is necessary (or the stack, but then the PC and SP cannot be modified). In `w_as_jsr_instruction`, the PC is stored on the stack, but PC cannot be `Rd` for `str`. Therefore we need an auxiliary -register (`8c91384` does this for some cases) +register (`8c91384` does this for some cases). *Answer on 09-19*. + +### 2016-09-19 +Talked to John: + + - (*Answer to question from 09-18*) Registers R14 (LR) and probably also R12 + are scratch registers and can be used at any time. + - When the program counter is stored on the stack in ARM (`str pc,[sp,#-4]!`), + the value pushed is actually the PC + 8, which gives space for a call after + storing the PC. On Thumb-2 this is different, so this should be checked. |