diff options
author | Damien George <damien.p.george@gmail.com> | 2014-10-12 16:59:29 +0100 |
---|---|---|
committer | Damien George <damien.p.george@gmail.com> | 2014-10-12 16:59:29 +0100 |
commit | 91cfd414c052179ad41755cc7e5085be1a365c2d (patch) | |
tree | 6ca19f158f2df040955b077c801be03e604644fe /py/asmx64.h | |
parent | 1ef2348df0c15f9924d3b5be798fd20805ccd5aa (diff) | |
download | micropython-91cfd414c052179ad41755cc7e5085be1a365c2d.tar.gz micropython-91cfd414c052179ad41755cc7e5085be1a365c2d.zip |
py: Implement native load for viper.
Viper can now do: ptr8(buf)[0], which loads a byte from a buffer using
machine instructions.
Diffstat (limited to 'py/asmx64.h')
-rw-r--r-- | py/asmx64.h | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/py/asmx64.h b/py/asmx64.h index 8dce48c5c8..656aff692b 100644 --- a/py/asmx64.h +++ b/py/asmx64.h @@ -83,9 +83,12 @@ void asm_x64_mov_r64_r64(asm_x64_t* as, int dest_r64, int src_r64); void asm_x64_mov_i64_to_r64(asm_x64_t* as, int64_t src_i64, int dest_r64); void asm_x64_mov_i64_to_r64_optimised(asm_x64_t *as, int64_t src_i64, int dest_r64); void asm_x64_mov_i64_to_r64_aligned(asm_x64_t *as, int64_t src_i64, int dest_r64); -void asm_x64_mov_r8_to_disp(asm_x64_t *as, int src_r64, int dest_r64, int dest_disp); -void asm_x64_mov_r16_to_disp(asm_x64_t *as, int src_r64, int dest_r64, int dest_disp); -void asm_x64_mov_r64_to_disp(asm_x64_t *as, int src_r64, int dest_r64, int dest_disp); +void asm_x64_mov_r8_to_mem8(asm_x64_t *as, int src_r64, int dest_r64, int dest_disp); +void asm_x64_mov_r16_to_mem16(asm_x64_t *as, int src_r64, int dest_r64, int dest_disp); +void asm_x64_mov_r64_to_mem64(asm_x64_t *as, int src_r64, int dest_r64, int dest_disp); +void asm_x64_mov_mem8_to_r64zx(asm_x64_t *as, int src_r64, int src_disp, int dest_r64); +void asm_x64_mov_mem16_to_r64zx(asm_x64_t *as, int src_r64, int src_disp, int dest_r64); +void asm_x64_mov_mem64_to_r64(asm_x64_t *as, int src_r64, int src_disp, int dest_r64); void asm_x64_and_r64_r64(asm_x64_t *as, int dest_r64, int src_r64); void asm_x64_or_r64_r64(asm_x64_t *as, int dest_r64, int src_r64); void asm_x64_xor_r64_r64(asm_x64_t *as, int dest_r64, int src_r64); |