summaryrefslogtreecommitdiff
path: root/py/bc.h
diff options
context:
space:
mode:
Diffstat (limited to 'py/bc.h')
-rw-r--r--py/bc.h18
1 files changed, 18 insertions, 0 deletions
diff --git a/py/bc.h b/py/bc.h
index bedffa795..ac9105a55 100644
--- a/py/bc.h
+++ b/py/bc.h
@@ -60,6 +60,20 @@
// const0 : obj
// constN : obj
+typedef struct _mp_bytecode_prelude_t {
+ uint n_state;
+ uint n_exc_stack;
+ uint scope_flags;
+ uint n_pos_args;
+ uint n_kwonly_args;
+ uint n_def_pos_args;
+ qstr qstr_block_name;
+ qstr qstr_source_file;
+ const byte *line_info;
+ const byte *locals;
+ const byte *opcodes;
+} mp_bytecode_prelude_t;
+
// Exception stack entry
typedef struct _mp_exc_stack_t {
const byte *handler;
@@ -84,6 +98,10 @@ typedef struct _mp_code_state_t {
#if MICROPY_STACKLESS
struct _mp_code_state_t *prev;
#endif
+ #if MICROPY_PY_SYS_SETTRACE
+ struct _mp_code_state_t *prev_state;
+ struct _mp_obj_frame_t *frame;
+ #endif
// Variable-length
mp_obj_t state[0];
// Variable-length, never accessed by name, only as (void*)(state + n_state)