aboutsummaryrefslogtreecommitdiff
path: root/py/emit.h
diff options
context:
space:
mode:
authorDamien George <damien.p.george@gmail.com>2019-03-09 12:32:09 +1100
committerDamien George <damien.p.george@gmail.com>2019-03-14 12:22:25 +1100
commit55fcb83a42fef108dfa2cd23bae55597d1569f68 (patch)
tree988c431ea25de914b1364e7a34ecf4e40cc82d2c /py/emit.h
parent9c9bc65e74abb645817c757f005eef6d7394f507 (diff)
py/compile: Support multiple inline asm emitters.
Diffstat (limited to 'py/emit.h')
-rw-r--r--py/emit.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/py/emit.h b/py/emit.h
index 7b97372bc..70f7bf122 100644
--- a/py/emit.h
+++ b/py/emit.h
@@ -255,6 +255,11 @@ void mp_emit_bc_end_except_handler(emit_t *emit);
typedef struct _emit_inline_asm_t emit_inline_asm_t;
typedef struct _emit_inline_asm_method_table_t {
+ #if MICROPY_DYNAMIC_COMPILER
+ emit_inline_asm_t *(*asm_new)(mp_uint_t max_num_labels);
+ void (*asm_free)(emit_inline_asm_t *emit);
+ #endif
+
void (*start_pass)(emit_inline_asm_t *emit, pass_kind_t pass, mp_obj_t *error_slot);
void (*end_pass)(emit_inline_asm_t *emit, mp_uint_t type_sig);
mp_uint_t (*count_params)(emit_inline_asm_t *emit, mp_uint_t n_params, mp_parse_node_t *pn_params);