diff options
| author | Damien <damien.p.george@gmail.com> | 2013-10-05 23:17:28 +0100 |
|---|---|---|
| committer | Damien <damien.p.george@gmail.com> | 2013-10-05 23:17:28 +0100 |
| commit | 826005c60b3c22c468ec21e995844037aafd6f99 (patch) | |
| tree | 291ba04ec4ab625316babc91bcdeebf5634150a3 /py/emit.h | |
| parent | 5bfb759980c3891a9401d877fb225770146c79df (diff) | |
Add support for inline thumb assembly.
Diffstat (limited to 'py/emit.h')
| -rw-r--r-- | py/emit.h | 13 |
1 files changed, 13 insertions, 0 deletions
@@ -128,3 +128,16 @@ emit_t *emit_cpython_new(uint max_num_labels); emit_t *emit_bc_new(uint max_num_labels); emit_t *emit_x64_new(uint max_num_labels); emit_t *emit_thumb_new(uint max_num_labels); + +typedef struct _emit_inline_asm_t emit_inline_asm_t; + +typedef struct _emit_inline_asm_method_table_t { + void (*start_pass)(emit_inline_asm_t *emit, pass_kind_t pass, scope_t *scope); + void (*end_pass)(emit_inline_asm_t *emit); + void (*label)(emit_inline_asm_t *emit, int label_num, qstr label_id); + void (*op)(emit_inline_asm_t *emit, qstr op, int n_args, py_parse_node_t *args); +} emit_inline_asm_method_table_t; + +extern const emit_inline_asm_method_table_t emit_inline_thumb_method_table; + +emit_inline_asm_t *emit_inline_thumb_new(uint max_num_labels); |
