aboutsummaryrefslogtreecommitdiff
path: root/py/emit.h
diff options
context:
space:
mode:
authorDamien George <damien.p.george@gmail.com>2018-05-22 22:18:42 +1000
committerDamien George <damien.p.george@gmail.com>2018-05-23 00:23:36 +1000
commit436e0d4c54ab22050072d392f0822e555bcc70f1 (patch)
tree17a1accb1b578441b9068f3dd005b32d46b3dc68 /py/emit.h
parentd97906ca9a0f1e0728cefb930d458bb8fba3bd17 (diff)
py/emit: Merge build set/slice into existing build emit function.
Reduces code size by: bare-arm: +0 minimal x86: +0 unix x64: -368 unix nanbox: -248 stm32: -128 cc3200: -48 esp8266: -184 esp32: -40
Diffstat (limited to 'py/emit.h')
-rw-r--r--py/emit.h14
1 files changed, 2 insertions, 12 deletions
diff --git a/py/emit.h b/py/emit.h
index d6ebcf791..7f0d8c0f7 100644
--- a/py/emit.h
+++ b/py/emit.h
@@ -82,6 +82,8 @@ typedef enum {
#define MP_EMIT_BUILD_TUPLE (0)
#define MP_EMIT_BUILD_LIST (1)
#define MP_EMIT_BUILD_MAP (3)
+#define MP_EMIT_BUILD_SET (6)
+#define MP_EMIT_BUILD_SLICE (8)
// Kind for emit->yield()
#define MP_EMIT_YIELD_VALUE (0)
@@ -140,12 +142,6 @@ typedef struct _emit_method_table_t {
void (*binary_op)(emit_t *emit, mp_binary_op_t op);
void (*build)(emit_t *emit, mp_uint_t n_args, int kind);
void (*store_map)(emit_t *emit);
- #if MICROPY_PY_BUILTINS_SET
- void (*build_set)(emit_t *emit, mp_uint_t n_args);
- #endif
- #if MICROPY_PY_BUILTINS_SLICE
- void (*build_slice)(emit_t *emit, mp_uint_t n_args);
- #endif
void (*store_comp)(emit_t *emit, scope_kind_t kind, mp_uint_t set_stack_index);
void (*unpack_sequence)(emit_t *emit, mp_uint_t n_args);
void (*unpack_ex)(emit_t *emit, mp_uint_t n_left, mp_uint_t n_right);
@@ -241,12 +237,6 @@ void mp_emit_bc_unary_op(emit_t *emit, mp_unary_op_t op);
void mp_emit_bc_binary_op(emit_t *emit, mp_binary_op_t op);
void mp_emit_bc_build(emit_t *emit, mp_uint_t n_args, int kind);
void mp_emit_bc_store_map(emit_t *emit);
-#if MICROPY_PY_BUILTINS_SET
-void mp_emit_bc_build_set(emit_t *emit, mp_uint_t n_args);
-#endif
-#if MICROPY_PY_BUILTINS_SLICE
-void mp_emit_bc_build_slice(emit_t *emit, mp_uint_t n_args);
-#endif
void mp_emit_bc_store_comp(emit_t *emit, scope_kind_t kind, mp_uint_t list_stack_index);
void mp_emit_bc_unpack_sequence(emit_t *emit, mp_uint_t n_args);
void mp_emit_bc_unpack_ex(emit_t *emit, mp_uint_t n_left, mp_uint_t n_right);