49 Commits (68cd3a93f0728b61b0d2407f4ae802806dddce4d)

Author SHA1 Message Date
Damien George cc4c1adf6e py/showbc: Make sure to set the const_table before printing bytecode. 8 years ago
Damien George f4ee9f8853 py/bc.h: Rename _mp_code_state to _mp_code_state_t. 8 years ago
Damien George 581a59a456 py: Rename struct mp_code_state to mp_code_state_t. 8 years ago
Damien George 1d899e1783 py/bc: Use size_t instead of mp_uint_t to count size of state and args. 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 254cfa6c31 py: Use uintptr_t instead of mp_uint_t in MP_TAGPTR_* macros. 9 years ago
Damien George 9f6976b74e py: Make mp_setup_code_state take concrete pointer for func arg. 9 years ago
Damien George d8c834c95d py: Add MICROPY_PERSISTENT_CODE_LOAD/SAVE to load/save bytecode. 9 years ago
Damien George 713ea1800d py: Add constant table to bytecode. 9 years ago
Damien George 3a3db4dcf0 py: Put all bytecode state (arg count, etc) in bytecode. 9 years ago
Damien George 9b7f583b0c py: Reorganise bytecode layout so it's more structured, easier to edit. 10 years ago
Paul Sokolovsky 2039757b85 vm: Initial support for calling bytecode functions w/o C stack ("stackless"). 10 years ago
Paul Sokolovsky 53e5e0fa28 py: Make old_globals part of mp_code_state structure. 10 years ago
Damien George 51dfcb4bb7 py: Move to guarded includes, everywhere in py/ core. 10 years ago
Paul Sokolovsky 343266ea51 showbc: Refactor to allow inline instruction printing. 10 years ago
Damien George 74eb44c392 py: Reduce size of VM exception stack element by 1 machine word. 10 years ago
Damien George 1084b0f9c2 py: Store bytecode arg names in bytecode (were in own array). 10 years ago
Damien George 39dc145478 py: Change [u]int to mp_[u]int_t in qstr.[ch], and some other places. 10 years ago
Damien George 42f3de924b py: Convert [u]int to mp_[u]int_t where appropriate. 10 years ago
Damien George b534e1b9f1 py: Use variable length encoded uints in more places in bytecode. 10 years ago
Damien George 3c658a4e75 py: Fix bug where GC collected native/viper/asm function data. 10 years ago
Damien George 40f3c02682 Rename machine_(u)int_t to mp_(u)int_t. 11 years ago
Paul Sokolovsky f77d0c5bb3 objgenerator: First iteration of refactor to use mp_setup_code_state(). 11 years ago
Damien George aabd83ea20 py: Merge mp_execute_bytecode into fun_bc_call. 11 years ago
Paul Sokolovsky a4ac5b9f05 showbc: Make sure it's possible to trace MAKE_FUNCTION arg to actual bytecode. 11 years ago
Paul Sokolovsky b4ebad3310 vm: Factor out structure with code execution state and pass it around. 11 years ago
Damien George 3417bc2f25 py: Rename byte_code to bytecode everywhere. 11 years ago
Damien George 04b9147e15 Add license header to (almost) all files. 11 years ago
Paul Sokolovsky c5e32c6995 vm: Add rudimentary bytecode execution tracing capability. 11 years ago
Paul Sokolovsky f39d3b93da py: Implement support for generalized generator protocol. 11 years ago
Damien George 89f94b51ab py: Rename mp_exc_stack to mp_exc_stack_t. 11 years ago
Paul Sokolovsky 0c904df8e6 vm: Save current active exception on opening new try block. 11 years ago
Damien George bee17b00e3 py: Put n_state for bytecode in the bytecode prelude. 11 years ago
Paul Sokolovsky 1673420053 vm: Abstract working with tagged pointers in VM using macro accessors. 11 years ago
Paul Sokolovsky 48caa09a9d objgenerator: Implement .throw() method to throw exceptions into generator. 11 years ago
Paul Sokolovsky c0abc28aa1 objgenerator: Keep exception stack within generator object, like value stack. 11 years ago
Damien George c8f78bc280 py: VM never throws an exception, instead returns a status and value. 11 years ago
Damien George fb083ea986 py: mp_execute_byte_code has 2 arg arrays, for more efficient default params. 11 years ago
Damien George cbd2f7482c py: Add module/function/class name to exceptions. 11 years ago
Damien George 08335004cf Add source file name and line number to error messages. 11 years ago
ian-v 5fd8fd2c16 Revert MP_BOOL, etc. and use <stdbool.h> instead 11 years ago
ian-v 7a16fadbf8 Co-exist with C++ (issue #85) 11 years ago
Damien d99b05282d Change object representation from 1 big union to individual structs. 11 years ago
Damien 9ecbcfff99 py: work towards working closures. 11 years ago
Damien db4c361f1c py: add skeletal import functionality. 11 years ago
Damien 40fdfe3000 Improve allocation of stack for byte code. 11 years ago
Damien 03c9cfb015 Make byte code jumps relative. 11 years ago
Damien bd25445a82 Implement BC & runtime support for generator/yielding. 11 years ago
Damien 5609cca2ce Rename vm.h to bc.h. 11 years ago
Damien a397776d6b Implement basic class/object functionality in runtime. 11 years ago