262 Commits (ad97f2a49ea723cf21f828c99e0075ff1fd0680a)

Author SHA1 Message Date
Damien 33af3bf028 Change Py API names, py_get_* -> py_obj_get_*. 11 years ago
Damien 9b9e996df6 Support for for-loop in native thumb. 11 years ago
Damien 1a6633a74d Implement more thumb branch instructions. 11 years ago
Damien d57eba51e5 Add user object to runtime. 11 years ago
Damien 6ba1314265 Fix bug: emit native didn't clear last_was_return in label_assign. 11 years ago
Damien 7410e440ab Add basic complex number support. 11 years ago
Damien e0b1864337 Small hack to temporarily fix allocation of unique_code slots. 11 years ago
Damien ccfc9c51ba Py runtime: list.append returns None. 11 years ago
Damien 4ebb32fb95 Implement: str.join, more float support, ROT_TWO in VM. 11 years ago
Damien 2839168340 Add py_get_array_fixed_n function. 11 years ago
Damien 6f08f8ce51 Add working MMA support. 11 years ago
Damien d2c1a732e5 Call gc_free in gc_realloc after allocating new block. 11 years ago
Damien 8b3a7c2237 Fix func decls with no arguments: () -> (void). 11 years ago
Damien 9fc7933ff2 Add py_get_qstr. 11 years ago
Damien ec63cce470 Add simple support for C modules. 11 years ago
Damien 92c06561a3 Improve REPL compount statement detection. 11 years ago
Damien bb5316b905 gc: reserve first block; lexer: free vstr. 11 years ago
Damien fd8b6bcf55 Add gc_free function to force a block to be freed. 11 years ago
Damien 7b2d3f38ce Implement some more operators, mostly for small ints. 11 years ago
Damien f086ecf57c Shrink py_obj_base_t size to 4 machine words. 11 years ago
Damien eefcc79022 Clear ATBs on gc_init; better gc_info. 11 years ago
Damien dcced92c26 Add mark-sweep garbage collector. 11 years ago
Damien fa2162bc77 Integrate new lexer stream with stm framework. 11 years ago
Damien 27fb45eb1c Add local_num skeleton framework to deref/closure emit calls. 11 years ago
Damien a5185f4bc8 Abstract out back-end stream functionality from lexer. 11 years ago
Damien 68f59a96e3 Add vstr and its functions. 11 years ago
Damien df4b4f31ef Make grammar rules const so the go in .text section. 11 years ago
Damien 4d7adce9c5 Remove obsolete emitthumb.c (now use emitnative.c). 11 years ago
Damien 1595f3257e Make rt_fun_table const, so it goes in .text section. 11 years ago
Damien 5ac1b2efbd Implement REPL. 11 years ago
Damien 7bbd110691 Remove line in emitbc.c to print code size. 11 years ago
Damien 3997be444c Add single_input rule to grammar, for REPL. 11 years ago
Damien 9f770c658f Fix up insertion of newline at end of lexer stream. 11 years ago
Damien d2755ec538 Add iterators and comprehension to emitnative. 11 years ago
Damien c12aa468a1 Add SET_ADD opcode to VM. 11 years ago
Damien 5fd09668b7 Add MAP_ADD opcode to VM. 11 years ago
Damien bd25445a82 Implement BC & runtime support for generator/yielding. 11 years ago
Damien c226dca1f7 Support tuples and list comprehension, albeit crude. 11 years ago
Damien 152568bcb6 NLR and Python exceptions work on the board. 11 years ago
Damien c9f91976e1 Crude try-except working. 11 years ago
Damien ce89a21ea4 Implement basic exception framework, and simple for loop. 11 years ago
Damien 3ef4abb446 Change ifdef/if defined to simple if's. 11 years ago
Damien 0efb3a1b66 Tidy up SMALL_INT optimisations and CPython compatibility. 11 years ago
Damien 3a205179ea Option in compile.c to emit compatible or not with CPython. 11 years ago
Damien c025ebb2dc Separate out mpy core and unix version. 11 years ago
Damien a56f292626 Remove obsolete emitx64.c (now in emitnative.c). 11 years ago
Damien a1ddfcc213 Wrap out-native code in preprocessor declarations. 11 years ago
Damien eb19efb27e Simplify and improve function & method calling. 11 years ago
Damien 5609cca2ce Rename vm.h to bc.h. 11 years ago
Damien 7f5dacf345 Implement basic class/object in native code. 11 years ago