215 Commits (92a342a0113292c93a04d04af106649bb3e51b79)

Author SHA1 Message Date
Paul Sokolovsky eff85bb1dc py/vm: "yield from" didn't handle MP_OBJ_STOP_ITERATION optimization. 9 years ago
Damien George 40d8430ee3 py/vm: Add macros to hook into various points in the VM. 9 years ago
Damien George 93bb7dffd2 py/vm: Fix popping of exception block in UNWIND_JUMP opcode. 9 years ago
Damien George 3d2daa2d03 py: Change exception traceback data to use size_t instead of mp_uint_t. 9 years ago
Damien George 8047340d75 py: Handle case of return within the finally block of try-finally. 9 years ago
Damien George 7a30e87d2b py: Fix MICROPY_STACKLESS mode to compile with MICROPY_OBJ_REPR_D. 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 c8e9c0d89a py: Add MICROPY_PERSISTENT_CODE so code can persist beyond the runtime. 9 years ago
Damien George 4bf3f2d3c0 py: Fix with+for+return bug by popping for-iter when unwinding exc stack. 9 years ago
Paul Sokolovsky 2ff2ea5f3b vm: Handle "raise X from Y" statements the best way we can. 9 years ago
Damien George 59fba2d6ea py: Remove mp_load_const_bytes and instead load precreated bytes object. 10 years ago
Damien George ed570e4b2a py: Remove mp_load_const_str and replace uses with inlined version. 10 years ago
Damien George c5029bcbf3 py: Add MP_BINARY_OP_DIVMOD to simplify and consolidate divmod builtin. 10 years ago
Damien George c2a4e4effc py: Convert hash API to use MP_UNARY_OP_HASH instead of ad-hoc function. 10 years ago
Paul Sokolovsky 6738c1dded vm: Properly handle StopIteration raised in user instance iterator. 10 years ago
Paul Sokolovsky a7c02c4538 vm: Null pointer test when checking for StopIteration optimizations. 10 years ago
Damien George 8872abcbc4 py: Remove LOAD_CONST_ELLIPSIS bytecode, use LOAD_CONST_OBJ instead. 10 years ago
Paul Sokolovsky ae2c81ff38 vm: On exiting except block, clear sys.exc_info() value. 10 years ago
Paul Sokolovsky 8b85d14b92 modsys: Add basic sys.exc_info() implementation. 10 years ago
Damien George 8c1d23a0e2 py: Modify bytecode "with" behaviour so it doesn't use any heap. 10 years ago
Damien George b1bbe966c4 py: Combine load_attr and store_attr type methods into one (attr). 10 years ago
Damien George 4dea922610 py: Adjust some spaces in code style/format, purely for consistency. 10 years ago
stijn 36cc84a2a9 py: Fix msvc warning '*/ found outside of comment' 10 years ago
Damien George 12a5e17afb py: Add finer configuration of static funcs when not in stackless mode. 10 years ago
Paul Sokolovsky 7f1c98177b vm: Support strict stackless mode, with proper exception reporting. 10 years ago
Paul Sokolovsky f0a8f21190 vm: Implement stackless for CALL_FUNCTION_VAR_KW & CALL_METHOD_VAR_KW. 10 years ago
Paul Sokolovsky 390e92688c vm: Stackless support for MP_BC_CALL_METHOD. 10 years ago
Paul Sokolovsky 332a909d44 vm: If there's no heap to call function in stackless manner, call via C stack. 10 years ago
Paul Sokolovsky 2039757b85 vm: Initial support for calling bytecode functions w/o C stack ("stackless"). 10 years ago
stijn 28fa84b445 py: Add optional support for descriptors' __get__ and __set__ methods. 10 years ago
Damien George 5e1d993f54 py: Clean up some logic in VM to remove assert(0)'s. 10 years ago
Damien George 12d6d777e1 py: Small optimisation of logic flow in BC_WITH_CLEANUP bytecode. 10 years ago
Damien George 596f41da04 py: Reuse value stack in VM WITH_CLEANUP opcode to reduce C-stack size. 10 years ago
Damien George 7d414a1b52 py: Parse big-int/float/imag constants directly in parser. 10 years ago
Damien George dab1385177 py: Add load_const_obj to emitter, add LOAD_CONST_OBJ to bytecode. 10 years ago
Damien George 7ee91cf861 py: Add option to cache map lookup results in bytecode. 10 years ago
Damien George b4b10fd350 py: Put all global state together in state structures. 10 years ago
Damien George 51dfcb4bb7 py: Move to guarded includes, everywhere in py/ core. 10 years ago
Damien George f89d659e3b py: In VM, for selective ip saving, store 1 byte past last opcode. 10 years ago
Paul Sokolovsky 749575097f vm: Record exception ip only for instructions where exceptions may happen. 10 years ago
Damien George 74eb44c392 py: Reduce size of VM exception stack element by 1 machine word. 10 years ago
Damien George 7764f163fa py: Fix label printing in showbc; print sp in vm trace. 10 years ago
Damien George cd97a43f8d py, vm: Make unum a local variable for each opcode that uses it. 10 years ago
Damien George b0b0012fd8 py: Fix VM dispatch following a pending exception check. 10 years ago
Damien George 124df6f8d0 py: Add mp_pending_exception global variable, for VM soft interrupt. 10 years ago
Damien George 8456cc017b py: Compress load-int, load-fast, store-fast, unop, binop bytecodes. 10 years ago
Damien George b534e1b9f1 py: Use variable length encoded uints in more places in bytecode. 10 years ago
Damien George b427d6ae86 py: Fix line number printing for file with 1 line. 10 years ago
Damien George 4747becc64 py: Improve encoding scheme for line-number to bytecode map. 10 years ago