Commit Graph

16 Commits

Author SHA1 Message Date
Damien George 949b55691c py/compile2: Rename "Micro Python" to "MicroPython". 2017-09-06 12:46:24 +10:00
Damien George d64154c730 py/emitinlinethumb: Update to work with new small-heap compiler.
Note that the inline assembler only works with the small-heap compiler
enabled.
2017-09-01 14:55:44 +10:00
Damien George 414537711d py: Add MICROPY_USE_SMALL_HEAP_COMPILER option, disabled by default.
This new option allows the original and new parser/compiler to coexist.
2017-08-30 11:51:25 +10:00
Damien George 39b465ca83 py/compile2: Optimise emitter label indices to save a word of heap.
A port of d94bc675e8
2017-08-30 11:29:52 +10:00
Damien George 20f1bd0a14 py/compile2: Combine arith and bit-shift ops into 1 compile routine.
A port of a040fb89e7
2017-08-30 11:26:29 +10:00
Damien George 4ddb838f8b py/compile2: Raise SyntaxError if positional args are given after */**.
A port of 1e70fda69f
2017-08-30 11:26:05 +10:00
Damien George d7576c4ba7 py/compile2: Fix bug with break/continue in else of optimised for-range.
A port of 4c5f108321.
2017-08-30 11:24:29 +10:00
Damien George 3417b28eaf py/{parse2,compile2}: Update to work with merged master, v1.9.
Changes inclued:
- grammar.h now has DEF_RULE and DEF_RULE_NC
- iterators can be on the (Python) stack
- super() handling is refactored
- supe().foo(...) can be executed without the heap
2017-08-14 18:20:00 +10:00
Damien George a7f5c64d21 py/compile2: Track changes made between v1.8.4 and v1.8.5. 2017-08-14 16:24:46 +10:00
Damien George d9d9b0a300 py/compile2: Don't compile assert statement when optimisations enabled. 2017-08-14 12:26:13 +10:00
Damien George be2387885b py: Update compiler/parser to align with latest changes on master, v1.8. 2017-08-13 21:32:08 +10:00
Damien George 72912c753a py: Deoptimise try-finally and subscript parse nodes to match master.
This is a small de-optimisation so that it's easier to merge master into
this branch.
2017-08-13 21:23:02 +10:00
Damien George be020eb2c3 update compiler to align with latest changes on master, v1.7 2016-04-18 16:17:50 +01:00
Damien George c23a2eabf5 update parser and compiler to align with latest master 2016-04-18 15:09:34 +01:00
Damien George 127d1f5a2b fixing inline assembler (compile2.c) 2016-04-18 15:09:34 +01:00
Damien George 61398ab45a py: Implement parse bytecode. 2016-04-18 15:09:34 +01:00