diff options
author | Damien George <damien.p.george@gmail.com> | 2015-12-18 12:35:44 +0000 |
---|---|---|
committer | Damien George <damien.p.george@gmail.com> | 2015-12-18 12:35:44 +0000 |
commit | dd5353a4054024a411aa343a22ffcd16195a16ad (patch) | |
tree | faa3f91ab3a37f1b2f3469e01a9228e83853dc7b /py/runtime.c | |
parent | ab8012bd8098e155e38ef6dead62bca8a200e613 (diff) |
py: Add MICROPY_ENABLE_COMPILER and MICROPY_PY_BUILTINS_EVAL_EXEC opts.
MICROPY_ENABLE_COMPILER can be used to enable/disable the entire compiler,
which is useful when only loading of pre-compiled bytecode is supported.
It is enabled by default.
MICROPY_PY_BUILTINS_EVAL_EXEC controls support of eval and exec builtin
functions. By default they are only included if MICROPY_ENABLE_COMPILER
is enabled.
Disabling both options saves about 40k of code size on 32-bit x86.
Diffstat (limited to 'py/runtime.c')
-rw-r--r-- | py/runtime.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/py/runtime.c b/py/runtime.c index c9a56f635..3a1f588ab 100644 --- a/py/runtime.c +++ b/py/runtime.c @@ -1304,6 +1304,8 @@ void mp_import_all(mp_obj_t module) { } } +#if MICROPY_ENABLE_COMPILER + // this is implemented in this file so it can optimise access to locals/globals mp_obj_t mp_parse_compile_execute(mp_lexer_t *lex, mp_parse_input_kind_t parse_input_kind, mp_obj_dict_t *globals, mp_obj_dict_t *locals) { // save context @@ -1342,6 +1344,8 @@ mp_obj_t mp_parse_compile_execute(mp_lexer_t *lex, mp_parse_input_kind_t parse_i } } +#endif // MICROPY_ENABLE_COMPILER + void *m_malloc_fail(size_t num_bytes) { DEBUG_printf("memory allocation failed, allocating " UINT_FMT " bytes\n", num_bytes); if (0) { |