38 #if MICROPY_DEBUG_VERBOSE // print debugging info 39 #define DEBUG_PRINT (1) 40 #define WRITE_CODE (1) 41 #define DEBUG_printf DEBUG_printf 42 #define DEBUG_OP_printf(...) DEBUG_printf(__VA_ARGS__) 43 #else // don't print debugging info 44 #define DEBUG_printf(...) (void)0 45 #define DEBUG_OP_printf(...) (void)0 48 #if MICROPY_DEBUG_PRINTERS 69 #if MICROPY_PERSISTENT_CODE_SAVE 78 #if MICROPY_DEBUG_PRINTERS 85 #if MICROPY_EMIT_NATIVE || MICROPY_EMIT_INLINE_ASM 98 if (i > 0 && i % 16 == 0) {
106 FILE *fp_write_code = fopen(
"out-code",
"wb");
107 fwrite(fun_data, fun_len, 1, fp_write_code);
108 fclose(fp_write_code);
129 #if MICROPY_EMIT_NATIVE 137 #if MICROPY_EMIT_INLINE_ASM 161 if (n_closed_over & 0x100) {
mp_obj_t mp_obj_new_closure(mp_obj_t fun, size_t n_closed, const mp_obj_t *closed)
union _mp_raw_code_t::@15 data
struct _mp_raw_code_t::@15::@16 u_byte
#define MP_OBJ_IS_TYPE(o, t)
mp_obj_t mp_obj_new_gen_wrap(mp_obj_t fun)
#define MP_SCOPE_FLAG_GENERATOR
struct _mp_raw_code_t::@15::@17 u_native
#define DEBUG_OP_printf(...)
void mp_emit_glue_assign_native(mp_raw_code_t *rc, mp_raw_code_kind_t kind, void *fun_data, mp_uint_t fun_len, const mp_uint_t *const_table, mp_uint_t n_pos_args, mp_uint_t scope_flags, mp_uint_t type_sig)
mp_obj_t mp_obj_new_fun_asm(size_t n_args, void *fun_data, mp_uint_t type_sig)
mp_obj_t mp_make_closure_from_raw_code(const mp_raw_code_t *rc, mp_uint_t n_closed_over, const mp_obj_t *args)
mp_obj_t mp_make_function_from_raw_code(const mp_raw_code_t *rc, mp_obj_t def_args, mp_obj_t def_kw_args)
mp_obj_t mp_obj_new_fun_viper(size_t n_args, void *fun_data, mp_uint_t type_sig)
mp_uint_t mp_verbose_flag
void mp_bytecode_print(const void *descr, const byte *code, mp_uint_t len, const mp_uint_t *const_table)
#define m_new0(type, num)
mp_raw_code_t * mp_emit_glue_new_raw_code(void)
mp_obj_t mp_obj_new_fun_native(mp_obj_t def_args_in, mp_obj_t def_kw_args, const void *fun_data, const mp_uint_t *const_table)
const mp_obj_type_t mp_type_tuple
const mp_obj_type_t mp_type_dict
void mp_emit_glue_assign_bytecode(mp_raw_code_t *rc, const byte *code, mp_uint_t len, const mp_uint_t *const_table, mp_uint_t scope_flags)
#define DEBUG_printf(...)
#define MICROPY_PERSISTENT_CODE_SAVE
mp_obj_t mp_obj_new_fun_bc(mp_obj_t def_args, mp_obj_t def_kw_args, const byte *code, const mp_uint_t *const_table)