diff options
author | Damien George <damien.p.george@gmail.com> | 2014-05-07 17:24:22 +0100 |
---|---|---|
committer | Damien George <damien.p.george@gmail.com> | 2014-05-07 17:24:22 +0100 |
commit | 36db6bcf54fd32a247c85719832a9cf43e124ab5 (patch) | |
tree | 9d23c6efc069a8410d894b2a27caf88b5f2bfba8 /py/asmthumb.h | |
parent | ca25c15d560f3f5337819bac65832cccc4752495 (diff) | |
download | micropython-36db6bcf54fd32a247c85719832a9cf43e124ab5.tar.gz micropython-36db6bcf54fd32a247c85719832a9cf43e124ab5.zip |
py, compiler: Improve passes; add an extra pass for native emitter.
Diffstat (limited to 'py/asmthumb.h')
-rw-r--r-- | py/asmthumb.h | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/py/asmthumb.h b/py/asmthumb.h index fbc3754387..1046b0353b 100644 --- a/py/asmthumb.h +++ b/py/asmthumb.h @@ -24,9 +24,8 @@ * THE SOFTWARE. */ -#define ASM_THUMB_PASS_1 (1) -#define ASM_THUMB_PASS_2 (2) -#define ASM_THUMB_PASS_3 (3) +#define ASM_THUMB_PASS_COMPUTE (1) +#define ASM_THUMB_PASS_EMIT (2) #define REG_R0 (0) #define REG_R1 (1) @@ -71,7 +70,7 @@ typedef struct _asm_thumb_t asm_thumb_t; asm_thumb_t *asm_thumb_new(uint max_num_labels); void asm_thumb_free(asm_thumb_t *as, bool free_code); -void asm_thumb_start_pass(asm_thumb_t *as, int pass); +void asm_thumb_start_pass(asm_thumb_t *as, uint pass); void asm_thumb_end_pass(asm_thumb_t *as); uint asm_thumb_get_code_size(asm_thumb_t *as); void *asm_thumb_get_code(asm_thumb_t *as); @@ -188,6 +187,7 @@ void asm_thumb_bcc_n(asm_thumb_t *as, int cond, uint label); void asm_thumb_mov_reg_i32(asm_thumb_t *as, uint reg_dest, machine_uint_t i32_src); // convenience void asm_thumb_mov_reg_i32_optimised(asm_thumb_t *as, uint reg_dest, int i32_src); // convenience +void asm_thumb_mov_reg_i32_aligned(asm_thumb_t *as, uint reg_dest, int i32); // convenience void asm_thumb_mov_local_reg(asm_thumb_t *as, int local_num_dest, uint rlo_src); // convenience void asm_thumb_mov_reg_local(asm_thumb_t *as, uint rlo_dest, int local_num); // convenience void asm_thumb_mov_reg_local_addr(asm_thumb_t *as, uint rlo_dest, int local_num); // convenience |