summaryrefslogtreecommitdiff
path: root/py/emit.h
diff options
context:
space:
mode:
authorDamien <damien.p.george@gmail.com>2013-10-05 13:37:10 +0100
committerDamien <damien.p.george@gmail.com>2013-10-05 13:37:10 +0100
commitb05d707b2329a9534121e09e26eb9f8fef1917d3 (patch)
tree6c1bdbaa07b85d718283b6bfe66df15cfb1940c5 /py/emit.h
parent415eb6f8507cc8c912143e8173bd9b451f6af917 (diff)
Further factorise PASS_1 out of specific emit code.
Diffstat (limited to 'py/emit.h')
-rw-r--r--py/emit.h11
1 files changed, 7 insertions, 4 deletions
diff --git a/py/emit.h b/py/emit.h
index dcafbc08d..b2d451efd 100644
--- a/py/emit.h
+++ b/py/emit.h
@@ -113,10 +113,13 @@ void emit_common_load_id(pass_kind_t pass, scope_t *scope, emit_t *emit, const e
void emit_common_store_id(pass_kind_t pass, scope_t *scope, emit_t *emit, const emit_method_table_t *emit_method_table, qstr qstr);
void emit_common_delete_id(pass_kind_t pass, scope_t *scope, emit_t *emit, const emit_method_table_t *emit_method_table, qstr qstr);
-void emit_new_cpython(emit_t **emit, const emit_method_table_t **emit_method_table);
-void emit_new_bc(emit_t **emit, const emit_method_table_t **emit_method_table);
-void emit_new_x64(emit_t **emit, const emit_method_table_t **emit_method_table);
-void emit_new_thumb(emit_t **emit, const emit_method_table_t **emit_method_table);
+void emit_pass1_new(emit_t **emit, const emit_method_table_t **emit_method_table);
+uint emit_pass1_get_max_num_labels(emit_t *emit);
+
+void emit_cpython_new(emit_t **emit_out, const emit_method_table_t **emit_method_table_out, uint max_num_labels);
+void emit_bc_new(emit_t **emit, const emit_method_table_t **emit_method_table, uint max_num_labels);
+void emit_x64_new(emit_t **emit, const emit_method_table_t **emit_method_table, uint max_num_labels);
+void emit_thumb_new(emit_t **emit, const emit_method_table_t **emit_method_table, uint max_num_labels);
/*
void emit_set_native_types(emitter_t *emit, bool do_native_types);