70 Commits (c5ac2ac590bc2c413880dfd130be245a0c37c35a)

Author SHA1 Message Date
Paul Sokolovsky 56e5ef203b parse: Refactor parse node encoding to support full range of small ints. 11 years ago
Paul Sokolovsky bbf0e2fe12 parse: Note that fact that parser's small ints are different than VM small int. 11 years ago
Paul Sokolovsky a1aba36feb compile: Add comments ergarding non-implemented relative imports. 11 years ago
Damien George 8725f8f7de py: Pass all scope flags through to runtime. 11 years ago
Paul Sokolovsky 520e2f58a5 Replace global "static" -> "STATIC", to allow "analysis builds". Part 2. 11 years ago
Paul Sokolovsky 2f0b026a44 Clean up handling of function return type annotation. 11 years ago
Damien George bbcd49a496 py: Fix compile of class with keyword arguments in bases. 11 years ago
Damien George 35e2a4e6bb py: Add built-in super. 11 years ago
Damien George 9aa2a527b5 py: Tidy up BINARY_OPs; negation done by special NOT bytecode. 11 years ago
Damien George 7e5fb24e3b py: Reduce code size of compiler by a bit. 11 years ago
Damien George cbddb279bb py: Implement break/continue from an exception with finally. 11 years ago
Paul Sokolovsky 90750029df Implement default function arguments (for Python functions). 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 e4b6a079b3 py: Implement 'not' in compiler, and improve rt_is_true. 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
Paul Sokolovsky fd31358505 mp_compile(): Properly free module_scope and all nested scopes. 11 years ago
Damien George b979122dfb py: Use C99 way of variable macro arguments. 11 years ago
Damien George 00208ce194 py: Change macro var args in parser to be C99 compliant. 11 years ago
Damien George 600ae734cf py: Implement break and continue byte codes, and add tests. 11 years ago
Damien George 55baff4c9b Revamp qstrs: they now include length and hash. 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
Damien George d02c6d8962 Implement eval. 11 years ago
Damien George e5863d9301 py: AssertionError is loaded from global, to match CPython. 11 years ago
John R. Lenton b8698fca75 unified the bops 11 years ago
Paul Sokolovsky 899c69f94c compile_for_stmt_optimised_range(): Properly handle negative & unknown steps. 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 71c5181a8d Convert Python types to proper Python type hierarchy. 11 years ago
Damien George eb7bfcb286 Split qstr into pools, and put initial pool in ROM. 11 years ago
Damien George e67ed5d285 Improve configurability for native x64/thumb emitter. 11 years ago
Damien George 1fb031744f Change mp_compile so that it returns a function object for the module. 11 years ago
Damien George fe8fb9165c py: remove depedence on strcat and stpcpy. 11 years ago
Damien George 6baf76e28b py: make closures work. 11 years ago
Damien 732407f1bf Change memory allocation API to require size for free and realloc. 11 years ago
Damien d99b05282d Change object representation from 1 big union to individual structs. 11 years ago
Damien e2880aa2fd Fix a few compiler warnings. 11 years ago
Damien a1b2693161 py: remove further unnecessary emit_verbatim code. 11 years ago
Damien e388f1034e py: fix bug with doc string not recognised after first newline of file. 11 years ago
Damien 02f8941bf6 py: reduce use of emit_verbatim calls to minimum. 11 years ago
Damien 9ecbcfff99 py: work towards working closures. 11 years ago
Damien 318aec6ba9 py: emit correct id for closed over variables. 11 years ago
Damien 6332174ab4 py: compiler supports string juxtaposition=concatenation. 11 years ago
Damien db4c361f1c py: add skeletal import functionality. 11 years ago
Damien d79338969b py: restrict further when for-range optimisation is done. 11 years ago
Damien 0446a0d76d Change some debugging/output messages for native code generation. 11 years ago
Damien f3822fc34c Fix but with optimised range being 1 over. 11 years ago
Damien f72fd0e875 Add optimisation for "for x in range". 11 years ago
Damien 27fb45eb1c Add local_num skeleton framework to deref/closure emit calls. 11 years ago