aboutsummaryrefslogtreecommitdiff
path: root/py/asmarm.h
diff options
context:
space:
mode:
authorDamien George <damien@micropython.org>2020-06-25 13:09:07 +1000
committerDamien George <damien@micropython.org>2020-06-27 00:24:04 +1000
commitaa26fe62d8728c95d447475ced9b4a03380025ea (patch)
tree6a0147babbb940d6d0aa261a2c3fd41aaa8cd026 /py/asmarm.h
parent137df817575e06b7bd765fb230a99d108f1d4f61 (diff)
py/asm: Add funcs/macros to emit machine code for logical-shift-right.
Signed-off-by: Damien George <damien@micropython.org>
Diffstat (limited to 'py/asmarm.h')
-rw-r--r--py/asmarm.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/py/asmarm.h b/py/asmarm.h
index 825fd8840..46da661fa 100644
--- a/py/asmarm.h
+++ b/py/asmarm.h
@@ -101,6 +101,7 @@ void asm_arm_orr_reg_reg_reg(asm_arm_t *as, uint rd, uint rn, uint rm);
void asm_arm_mov_reg_local_addr(asm_arm_t *as, uint rd, int local_num);
void asm_arm_mov_reg_pcrel(asm_arm_t *as, uint reg_dest, uint label);
void asm_arm_lsl_reg_reg(asm_arm_t *as, uint rd, uint rs);
+void asm_arm_lsr_reg_reg(asm_arm_t *as, uint rd, uint rs);
void asm_arm_asr_reg_reg(asm_arm_t *as, uint rd, uint rs);
// memory
@@ -187,6 +188,7 @@ void asm_arm_bx_reg(asm_arm_t *as, uint reg_src);
#define ASM_MOV_REG_PCREL(as, reg_dest, label) asm_arm_mov_reg_pcrel((as), (reg_dest), (label))
#define ASM_LSL_REG_REG(as, reg_dest, reg_shift) asm_arm_lsl_reg_reg((as), (reg_dest), (reg_shift))
+#define ASM_LSR_REG_REG(as, reg_dest, reg_shift) asm_arm_lsr_reg_reg((as), (reg_dest), (reg_shift))
#define ASM_ASR_REG_REG(as, reg_dest, reg_shift) asm_arm_asr_reg_reg((as), (reg_dest), (reg_shift))
#define ASM_OR_REG_REG(as, reg_dest, reg_src) asm_arm_orr_reg_reg_reg((as), (reg_dest), (reg_dest), (reg_src))
#define ASM_XOR_REG_REG(as, reg_dest, reg_src) asm_arm_eor_reg_reg_reg((as), (reg_dest), (reg_dest), (reg_src))