summaryrefslogtreecommitdiff
path: root/py/compile.h
diff options
context:
space:
mode:
authorDamien George <damien@micropython.org>2022-12-07 14:42:35 +1100
committerDamien George <damien@micropython.org>2022-12-08 12:27:23 +1100
commit2283b6d68fe77b72e7beeb1bf24778834231b190 (patch)
treee7a03f1b759a2312b5b23a04c475f998b4ca20a7 /py/compile.h
parent96c23432f6ef448fdcccdfa6a442d64d7ed06277 (diff)
py: Pass in address to compiled module instead of returning it.
This change makes it so the compiler and persistent code loader take a mp_compiled_module_t* as their last argument, instead of returning this struct. This eliminates a duplicate context variable for all callers of these functions (because the context is now stored in the mp_compiled_module_t by the caller), and also eliminates any confusion about which context to use after the mp_compile_to_raw_code or mp_raw_code_load function returns (because there is now only one context, that stored in mp_compiled_module_t.context). Reduces code size by 16 bytes on ARM Cortex-based ports. Signed-off-by: Damien George <damien@micropython.org>
Diffstat (limited to 'py/compile.h')
-rw-r--r--py/compile.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/py/compile.h b/py/compile.h
index ae87bf2a0..5e0fd8b31 100644
--- a/py/compile.h
+++ b/py/compile.h
@@ -37,7 +37,7 @@ mp_obj_t mp_compile(mp_parse_tree_t *parse_tree, qstr source_file, bool is_repl)
#if MICROPY_PERSISTENT_CODE_SAVE
// this has the same semantics as mp_compile
-mp_compiled_module_t mp_compile_to_raw_code(mp_parse_tree_t *parse_tree, qstr source_file, bool is_repl, mp_module_context_t *globals);
+void mp_compile_to_raw_code(mp_parse_tree_t *parse_tree, qstr source_file, bool is_repl, mp_compiled_module_t *cm);
#endif
// this is implemented in runtime.c