168 Commits (6db5cede06dfb580c5e4f6cdeb1796256969b4fb)

Author SHA1 Message Date
Damien George 035180ca01 py: Remove commented-out debug printf's from emitbc and objlist. 5 years ago
Damien George c8c0fd4ca3 py: Rework and compress second part of bytecode prelude. 5 years ago
Damien George b5ebfadbd6 py: Compress first part of bytecode prelude. 5 years ago
Damien George 02db91a7a3 py: Split RAISE_VARARGS opcode into 3 separate ones. 5 years ago
Damien George 870e900d02 py: Introduce and use constants for multi-opcode sizes. 5 years ago
Milan Rossa 310b3d1b81 py: Integrate sys.settrace feature into the VM and runtime. 5 years ago
Damien George 8e7745eb31 py/emitbc: Make all emit_write_bytecode_* funcs take a stack_adj arg. 5 years ago
Damien George 3d9bd80447 py/emitbc: Rewrite switch in load_const_tok to reduce code size. 5 years ago
Damien George d9d92f27d7 py/compile: Add support to select the native emitter at runtime. 6 years ago
Damien George 5a2599d962 py: Replace POP_BLOCK and POP_EXCEPT opcodes with POP_EXCEPT_JUMP. 6 years ago
Damien George e1fb03f3e2 py: Fix VM crash with unwinding jump out of a finally block. 6 years ago
Damien George 6d19934463 py: Get optional VM stack overflow check compiling and working again. 6 years ago
Damien George 80db30a510 py/emit: Completely remove set_native_type, arg type is set in compiler. 6 years ago
Damien George 18e6358480 py/emit: Combine setup with/except/finally into one emit function. 7 years ago
Damien George 436e0d4c54 py/emit: Merge build set/slice into existing build emit function. 7 years ago
Damien George d97906ca9a py/emit: Combine import from/name/star into one emit function. 7 years ago
Damien George 8a513da5a5 py/emit: Combine break_loop and continue_loop into one emit function. 7 years ago
Damien George 6211d979ee py/emit: Combine load/store/delete attr into one emit function. 7 years ago
Damien George a4941a8ba4 py/emit: Combine load/store/delete subscr into one emit function. 7 years ago
Damien George d298013939 py/emit: Combine name and global into one func for load/store/delete. 7 years ago
Damien George 26b5754092 py/emit: Combine build tuple/list/map emit funcs into one. 7 years ago
Damien George e686c94052 py/emit: Combine yield value and yield-from emit funcs into one. 7 years ago
Damien George 0a25fff956 py/emit: Combine fast and deref into one function for load/store/delete. 7 years ago
Jeff Epler bc6c0b28bf py/emitbc: Avoid undefined behavior calling memset() with NULL 1st arg. 7 years ago
Damien George 5604b710c2 py/emitglue: When assigning bytecode only pass bytecode len if needed. 7 years ago
Damien George f935bce3c5 py/{emitbc,asmbase}: Only clear emit labels to -1 when in debug mode. 7 years ago
Damien George 280fb4d928 py/emitbc: Remove stray semicolon in outer scope. 7 years ago
Alexander Steffen 55f33240f3 all: Use the name MicroPython consistently in comments 7 years ago
Tom Collins 145796f037 py,extmod: Some casts and minor refactors to quiet compiler warnings. 7 years ago
Damien George 8f064e469d py/emitbc: Fix bug with BC emitter computing Python stack size. 8 years ago
Damien George dd11af209d py: Add LOAD_SUPER_METHOD bytecode to allow heap-free super meth calls. 8 years ago
Damien George 60656eaea4 py: Define and use MP_OBJ_ITER_BUF_NSLOTS to get size of stack iter buf. 8 years ago
Damien George 30b42dd72d py: Remove unused "use_stack" argument from for_iter_end emit function. 8 years ago
Damien George 088740ecc4 py: Optimise storage of iterator so it takes only 4 slots on Py stack. 8 years ago
Damien George 6e769da0da py: Make FOR_ITER opcode pop 1+4 slots from the stack when finished. 8 years ago
Damien George f4df3aaa72 py: Allow bytecode/native to put iter_buf on stack for simple for loops. 9 years ago
Damien George cc2dbdd1fe py/emitbc: Produce correct line number info for large bytecode chunks. 8 years ago
Pavol Rusnak 7ffc959c00 py: remove asserts that are always true in emitbc.c 8 years ago
Damien George 7385b018ed py/emitbc: Remove/refactor unreachable code, to improve coverage. 8 years ago
Damien George f040685b0c py: Only store the exception instance on Py stack in bytecode try block. 8 years ago
Damien George adaf0d865c py: Combine 3 comprehension opcodes (list/dict/set) into 1. 8 years ago
Damien George a5624bf381 py: Combine 3 comprehension emit functions (list/dict/set) into 1. 8 years ago
Damien George ce8b4e8749 py: Combine continuous block of emit steps into with_cleanup emit call. 9 years ago
Damien George ea23520403 py: Add MICROPY_DYNAMIC_COMPILER option to config compiler at runtime. 9 years ago
Damien George dd5353a405 py: Add MICROPY_ENABLE_COMPILER and MICROPY_PY_BUILTINS_EVAL_EXEC opts. 9 years ago
Damien George bdbe8c9ae2 py: Make UNARY_OP_NOT a first-class op, to agree with Py not semantics. 9 years ago
Damien George 999cedb90f py: Wrap all obj-ptr conversions in MP_OBJ_TO_PTR/MP_OBJ_FROM_PTR. 9 years ago
Damien George 5d66b427e2 py/emit: Change type of arg of load_const_obj from void* to mp_obj_t. 9 years ago
Damien George d8c834c95d py: Add MICROPY_PERSISTENT_CODE_LOAD/SAVE to load/save bytecode. 9 years ago
Damien George c8e9c0d89a py: Add MICROPY_PERSISTENT_CODE so code can persist beyond the runtime. 9 years ago