26 #ifndef MICROPY_INCLUDED_PY_BC_H 27 #define MICROPY_INCLUDED_PY_BC_H 102 #define mp_bytecode_print_inst(code, const_table) mp_bytecode_print2(code, 1, const_table) 105 #define MP_TAGPTR_PTR(x) ((void*)((uintptr_t)(x) & ~((uintptr_t)3))) 106 #define MP_TAGPTR_TAG0(x) ((uintptr_t)(x) & 1) 107 #define MP_TAGPTR_TAG1(x) ((uintptr_t)(x) & 2) 108 #define MP_TAGPTR_MAKE(ptr, tag) ((void*)((uintptr_t)(ptr) | (tag))) 110 #if MICROPY_PERSISTENT_CODE_LOAD || MICROPY_PERSISTENT_CODE_SAVE 112 #define MP_OPCODE_BYTE (0) 113 #define MP_OPCODE_QSTR (1) 114 #define MP_OPCODE_VAR_UINT (2) 115 #define MP_OPCODE_OFFSET (3) 117 uint mp_opcode_format(
const byte *
ip,
size_t *opcode_size);
121 #endif // MICROPY_INCLUDED_PY_BC_H mp_obj_dict_t * old_globals
const byte * mp_decode_uint_skip(const byte *ptr)
struct _mp_code_state_t mp_code_state_t
mp_vm_return_kind_t mp_execute_bytecode(mp_code_state_t *code_state, volatile mp_obj_t inject_exc)
const byte * mp_bytecode_print_str(const byte *ip)
void mp_bytecode_print2(const byte *code, size_t len, const mp_uint_t *const_table)
mp_uint_t mp_decode_uint(const byte **ptr)
void mp_bytecode_print(const void *descr, const byte *code, mp_uint_t len, const mp_uint_t *const_table)
mp_code_state_t * mp_obj_fun_bc_prepare_codestate(mp_obj_t func, size_t n_args, size_t n_kw, const mp_obj_t *args)
void mp_setup_code_state(mp_code_state_t *code_state, size_t n_args, size_t n_kw, const mp_obj_t *args)
mp_uint_t mp_decode_uint_value(const byte *ptr)
struct _mp_exc_stack_t mp_exc_stack_t