diff options
author | Damien George <damien.p.george@gmail.com> | 2016-01-07 14:54:13 +0000 |
---|---|---|
committer | Damien George <damien.p.george@gmail.com> | 2016-01-07 16:34:11 +0000 |
commit | ea8be373a975356808a19a79f1dd20383bec82ba (patch) | |
tree | e514c9d912b842c52568bcc26d1f9f2f64c11d06 /docs/reference | |
parent | 47dc5922cab047003acbdb404b9e151f343f9679 (diff) |
py/inlinethumb: Remove 30-bit restriction on movwt instruction.
movwt can now move a full 32-bit constant into a register.
Diffstat (limited to 'docs/reference')
-rw-r--r-- | docs/reference/asm_thumb2_mov.rst | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/docs/reference/asm_thumb2_mov.rst b/docs/reference/asm_thumb2_mov.rst index e42460881..900bf957b 100644 --- a/docs/reference/asm_thumb2_mov.rst +++ b/docs/reference/asm_thumb2_mov.rst @@ -21,8 +21,7 @@ Where immediate values are used, these are zero-extended to 32 bits. Thus movt writes an immediate value to the top halfword of the destination register. It does not affect the contents of the bottom halfword. -* movwt(Rd, imm30) ``Rd = imm30`` +* movwt(Rd, imm32) ``Rd = imm32`` -movwt is a pseudo-instruction: the MicroPython assembler emits a ``movw`` and a ``movt`` -to move a zero extended 30 bit value into Rd. Where the full 32 bits are required a -workround is to use the movw and movt operations. +movwt is a pseudo-instruction: the MicroPython assembler emits a ``movw`` followed +by a ``movt`` to move a 32-bit value into Rd. |