diff options
Diffstat (limited to 'py/emitcpy.c')
-rw-r--r-- | py/emitcpy.c | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/py/emitcpy.c b/py/emitcpy.c index c3dc204969..0a3149fcd5 100644 --- a/py/emitcpy.c +++ b/py/emitcpy.c @@ -29,6 +29,10 @@ struct _emit_t { int *label_offsets; }; +// forward declarations +static const emit_method_table_t emit_cpy_method_table; +static void emit_cpy_load_const_verbatim_quoted_str(emit_t *emit, qstr qstr, bool bytes); + static void emit_cpy_set_native_types(emit_t *emit, bool do_native_types) { } @@ -63,6 +67,18 @@ static void emit_cpy_set_stack_size(emit_t *emit, int size) { emit->stack_size = size; } +static void emit_cpy_load_id(emit_t *emit, qstr qstr) { + emit_common_load_id(emit, &emit_cpy_method_table, emit->scope, qstr); +} + +static void emit_cpy_store_id(emit_t *emit, qstr qstr) { + emit_common_store_id(emit, &emit_cpy_method_table, emit->scope, qstr); +} + +static void emit_cpy_delete_id(emit_t *emit, qstr qstr) { + emit_common_delete_id(emit, &emit_cpy_method_table, emit->scope, qstr); +} + static void emit_pre(emit_t *emit, int stack_size_delta, int byte_code_size) { emit->stack_size += stack_size_delta; if (emit->stack_size > emit->scope->stack_size) { @@ -156,7 +172,6 @@ static void emit_cpy_load_const_id(emit_t *emit, qstr qstr) { } } -static void emit_cpy_load_const_verbatim_quoted_str(emit_t *emit, qstr qstr, bool bytes); static void emit_cpy_load_const_str(emit_t *emit, qstr qstr, bool bytes) { emit_pre(emit, 1, 3); if (emit->pass == PASS_3) { @@ -818,6 +833,10 @@ static const emit_method_table_t emit_cpy_method_table = { emit_cpy_get_stack_size, emit_cpy_set_stack_size, + emit_cpy_load_id, + emit_cpy_store_id, + emit_cpy_delete_id, + emit_cpy_label_assign, emit_cpy_import_name, emit_cpy_import_from, |