| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2015-04-03 | py: Implement closures in native code generator. | Damien George | |
| Currently supports only x64 and Thumb2 archs. | |||
| 2015-04-03 | py: Implement (non-compliant) support for delete_fast in native emitter. | Damien George | |
| This implementation is smaller (in code size) than #1024. | |||
| 2015-04-03 | README: Add note about pic16bit port. | Damien George | |
| 2015-04-03 | pic16bit: Initial version of port to 16-bit PIC family. | Damien George | |
| Reference MCU is dsPIC33J256GP506 with 256k ROM and 8k RAM, on the dsPIC DSC Starter Kit board. The REPL works, GC works, pyb module has LED and Switch objects. It passes some tests from the test suite (most it can't run because it doesn't have the Python features enabled). | |||
| 2015-04-03 | py: Make heap printing compatible with 16-bit word size. | Damien George | |
| 2015-04-03 | py: Allow MPZ_DIG_SIZE to be optionally configured by a port. | Damien George | |
| 2015-04-03 | py: Allow configurable object representation, with 2 different options. | Damien George | |
| 2015-04-02 | py: Add finer configuration of static funcs when not in stackless mode. | Damien George | |
| Also rename call_args_t to mp_call_args_t. | |||
| 2015-04-03 | unix: Add stackless config settings, for easy access. | Paul Sokolovsky | |
| 2015-04-03 | vm: Support strict stackless mode, with proper exception reporting. | Paul Sokolovsky | |
| I.e. in this mode, C stack will never be used to call a Python function, but if there's no free heap for a call, it will be reported as RuntimeError (as expected), not MemoryError. | |||
| 2015-04-03 | vm: Implement stackless for CALL_FUNCTION_VAR_KW & CALL_METHOD_VAR_KW. | Paul Sokolovsky | |
| 2015-04-03 | runtime: Split mp_call_prepare_args_n_kw_var() from mp_call_method_n_kw_var(). | Paul Sokolovsky | |
| Allow for reuse for stackless design, where preparing args is separate from calling. | |||
| 2015-04-03 | vm: Stackless support for MP_BC_CALL_METHOD. | Paul Sokolovsky | |
| 2015-04-03 | vm: If there's no heap to call function in stackless manner, call via C stack. | Paul Sokolovsky | |
| 2015-04-03 | vm: Initial support for calling bytecode functions w/o C stack ("stackless"). | Paul Sokolovsky | |
| 2015-04-02 | makeqstrdata.py: Add support for strings with backslash escapes. | Paul Sokolovsky | |
| 2015-04-01 | py: Fix emitnative's creation of small ints so it uses the macro. | Damien George | |
| 2015-03-31 | cc3200: Add specific version file for the CC3200 port. | Daniel Campora | |
| Current version has been numbered as 0.9.0 since Timers/PWM support is still missing. | |||
| 2015-03-31 | cc3200: Remove duplicated code from moduos. | Daniel Campora | |
| Error reporting is also changed from detailed to terse, as with the rest of the CC3200's modules. All this combined saves ~200 bytes. | |||
| 2015-03-31 | docs: uctypes: Bullet list formatting fixes. | Paul Sokolovsky | |
| 2015-03-31 | docs: uctypes: Describe how to instantiate struct objects. | Paul Sokolovsky | |
| 2015-03-31 | objtype: Add special unary methods __pos__, __neg__, __invert__. | Paul Sokolovsky | |
| Conditional on MICROPY_PY_ALL_SPECIAL_METHODS. | |||
| 2015-03-31 | modbuiltins: round(): Accept second arg, and at least support it to be 0. | Paul Sokolovsky | |
| Per https://docs.python.org/3/library/functions.html#round, 2-args format guaranteedly returns float. | |||
| 2015-03-30 | docs: Add additional example/note for Timer's callback usage. | Ivan Pejić | |
| Add example: using named function for the Timer's callback. Add note: improving traceback inside interrupt timers. | |||
| 2015-03-30 | docs: Provide initial documentation for micropython module. | Damien George | |
| 2015-03-29 | lib: Update FatFs to R0.11. | Daniel Campora | |
| There are lots of cosmetic changes, but this release brings a very important bug fix: - Fixed f_unlink() does not remove cluster chain of the file. With R0.10c if you try to write a file that is too large to fit in the free space of the drive, the operation fails, you delete the incomplete file, and it seems to be erased, but the space is not really freed, because any subsequent write operations fail because the drive is "still" full. The only way to recover from this is by formatting the drive. I can confirm that R0.11 fixes the problem. | |||
| 2015-03-29 | docs: Bump version to 1.4.v1.4 | Damien George | |
| 2015-03-28 | tests/class_descriptor.py: Fix line-endings (were CRLF). | Paul Sokolovsky | |
| 2015-03-26 | py: Add optional support for descriptors' __get__ and __set__ methods. | stijn | |
| Disabled by default. Enabled on unix and windows ports. | |||
| 2015-03-27 | docs: uctypes: Describe bytes_at(), bytearray_at(). | Paul Sokolovsky | |
| 2015-03-26 | cc3200: Remove unneeded SPI instruction in the simplelink driver. | Daniel Campora | |
| Setting the word count before a SPI transaction is only needed when using DMA. | |||
| 2015-03-26 | cc3200: Increase main stack size to 2K. | Daniel Campora | |
| Increasing it from 1K to 2K gives more freedom to the callback handlers, before this, simply nesting a function call into a printf would cause a stack overflow. | |||
| 2015-03-26 | py: Increase fixed size of stack-info in native emitter. | Damien George | |
| This is a temporary fix. | |||
| 2015-03-26 | py, compiler: When just bytecode, make explicit calls instead of table. | Damien George | |
| When just the bytecode emitter is needed there is no need to have a dynamic method table for the emitter back-end, and we can instead directly call the mp_emit_bc_XXX functions. This gives a significant reduction in code size and a very slight performance boost for the compiler. This patch saves 1160 bytes code on Thumb2 and 972 bytes on x86, when native emitters are disabled. Overall savings in code over the last 3 commits are: bare-arm: 1664 bytes. minimal: 2136 bytes. stmhal: 584 bytes (it has native emitter enabled). cc3200: 1736 bytes. | |||
| 2015-03-26 | py, compiler: Remove emit_pass1 code, using emit_bc to do its job. | Damien George | |
| First pass for the compiler is computing the scope (eg if an identifier is local or not) and originally had an entire table of methods dedicated to this, most of which did nothing. With changes from previous commit, this set of methods can be removed and the methods from the bytecode emitter used instead, with very little modification -- this is what is done in this commit. This factoring has little to no impact on the speed of the compiler (tested by compiling 3763 Python scripts and timing it). This factoring reduces code size by about 270-300 bytes on Thumb2 archs, and 400 bytes on x86. | |||
| 2015-03-26 | py, compiler: Refactor load/store/delete_id logic to reduce code size. | Damien George | |
| Saves around 230 bytes on Thumb2 and 750 bytes on x86. | |||
| 2015-03-26 | cc3200: Minor refactorings on modwlan and pybsleep. | Daniel Campora | |
| 2015-03-26 | cc3200: Reenable active interrupts when waking from suspended mode. | Daniel Campora | |
| 2015-03-26 | objdict: Cast mp_obj_t to concrete types explicitly. | Paul Sokolovsky | |
| Continuation of refactoring applied previously to objlist. | |||
| 2015-03-26 | cc3200: Add callback support to the UART for RX interrupts. | Daniel Campora | |
| 2015-03-26 | cc3200: Remove superflous parameters from the SPI API. | Daniel Campora | |
| 2015-03-25 | tests: Skip some new tests when testing native emitter. | Damien George | |
| 2015-03-25 | tests: Add tests for SyntaxError, TypeError, and other missing things. | Damien George | |
| This is intended to improve coverage of the test suite. | |||
| 2015-03-25 | py: Fix bug in compiler which allowed through illegal augmented assign. | Damien George | |
| It allowed such things as (a, b) += c. | |||
| 2015-03-25 | py: Clean up some logic in VM to remove assert(0)'s. | Damien George | |
| Saves around 30 bytes code on Thumb2 archs. | |||
| 2015-03-25 | py: Simplify some logic in compiler; add comments about CPython compat. | Damien George | |
| 2015-03-25 | cc3200: Remove superflous params from the I2C API. | Daniel Campora | |
| 2015-03-25 | cc3200: Add GPIO25 to the pins list of the WiPy and the WiPy-SD. | Daniel Campora | |
| This allows to properly initialize the system led and add it to the sleep module so that it can be restored when resuming from suspended mode. | |||
| 2015-03-25 | cc3200: Rename the WiPy_SD to WiPy-SD. | Daniel Campora | |
| 2015-03-25 | cc3200: Roll back to the previous telnet and ftp timeouts. | Daniel Campora | |
| Unfortunately, these timeouts are the only realiable way (for now), to be able to detect broken connections due to half-open sockets. Such a thing occurs when getting out of the WiFi coverage area or when disconnecting from the AP (sometimes the client doesn't send the disconnect packet). | |||
