28 Commits (48697f1dd2fbf45fda6de4277de976c23e7d8302)

Author SHA1 Message Date
Damien George 9aa2a527b5 py: Tidy up BINARY_OPs; negation done by special NOT bytecode. 11 years ago
Damien George cbddb279bb py: Implement break/continue from an exception with finally. 11 years ago
Damien George 08d075592f py: Fix bug with LOAD_METHOD; fix int->machine_int_t for small int. 11 years ago
Damien George 41d02b654e py: Improve freeing of emitters in mp_compile. 11 years ago
Paul Sokolovsky f46d87a30d Add support for freeing code emitter objects at the end of compilation. 11 years ago
Damien George 55baff4c9b Revamp qstrs: they now include length and hash. 11 years ago
Damien George 08335004cf Add source file name and line number to error messages. 11 years ago
Damien George 20006dbba9 Make VM stack grow upwards, and so no reversed args arrays. 11 years ago
Damien George bc1d36924d py: Fix emitcpy and emitnative's binary_op. 11 years ago
John R. Lenton b8698fca75 unified the bops 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 George e67ed5d285 Improve configurability for native x64/thumb emitter. 11 years ago
Damien d99b05282d Change object representation from 1 big union to individual structs. 11 years ago
Damien a1b2693161 py: remove further unnecessary emit_verbatim code. 11 years ago
Damien 9ecbcfff99 py: work towards working closures. 11 years ago
Damien 6d4f3462c4 Viper: function calls now convert constant arguments to objects. 11 years ago
Damien ae0bc08a37 Viper supports inplace add (trivial). 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 6ba1314265 Fix bug: emit native didn't clear last_was_return in label_assign. 11 years ago
Damien 27fb45eb1c Add local_num skeleton framework to deref/closure emit calls. 11 years ago
Damien d2755ec538 Add iterators and comprehension to emitnative. 11 years ago
Damien 3ef4abb446 Change ifdef/if defined to simple if's. 11 years ago
Damien c025ebb2dc Separate out mpy core and unix version. 11 years ago
Damien eb19efb27e Simplify and improve function & method calling. 11 years ago
Damien 7f5dacf345 Implement basic class/object in native code. 11 years ago
Damien a397776d6b Implement basic class/object functionality in runtime. 11 years ago
Damien ff8ed77cc1 Improve push/pop and register usage for native emit. 11 years ago
Damien 13ed3a658d Native Python and Viper support for x64 and thumb all together. 11 years ago
Damien 3410be8035 Merge viper types with standard native emitter. 11 years ago
Damien 7af3d19a3c Implement crude viper emit stage. 11 years ago
Damien 6cdd3af601 Implement built-in decorators to select emit type. 11 years ago
Damien 4b03e77d4a Factorise EMIT_COMMON calls, mostly into emit_pass1. 11 years ago
Damien 054848a1b8 Compiler computes labels and max_num_labels. 11 years ago
Damien b05d707b23 Further factorise PASS_1 out of specific emit code. 11 years ago
Damien 415eb6f850 Restructure emit so it goes through a method table. 11 years ago
Damien 429d71943d Initial commit. 11 years ago