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.
This commit is contained in:
Damien George
2015-12-18 12:35:44 +00:00
parent ab8012bd80
commit dd5353a405
12 changed files with 60 additions and 1 deletions

View File

@@ -28,6 +28,8 @@
#include "py/emit.h"
#if MICROPY_ENABLE_COMPILER
void mp_emit_common_get_id_for_load(scope_t *scope, qstr qst) {
// name adding/lookup
bool added;
@@ -77,3 +79,5 @@ void mp_emit_common_id_op(emit_t *emit, const mp_emit_method_table_id_ops_t *emi
emit_method_table->deref(emit, qst, id->local_num);
}
}
#endif // MICROPY_ENABLE_COMPILER