- 02 Aug, 2015 1 commit
-
-
Damien George authored
-
- 20 Jun, 2015 1 commit
-
-
Damien George authored
Previous to this patch a call such as list.append(1, 2) would lead to a seg fault. This is because list.append is a builtin method and the first argument to such methods is always assumed to have the correct type. Now, when a builtin method is extracted like this it is wrapped in a checker object which checks the the type of the first argument before calling the builtin function. This feature is contrelled by MICROPY_BUILTIN_METHOD_CHECK_SELF_ARG and is enabled by default. See issue #1216.
-
- 21 Apr, 2015 1 commit
-
-
Damien George authored
If you need the functionality of a namedtuple but will only make 1 or a few instances, then use an attrtuple instead.
-
- 16 Apr, 2015 1 commit
-
-
Damien George authored
Previous to this patch the printing mechanism was a bit of a tangled mess. This patch attempts to consolidate printing into one interface. All (non-debug) printing now uses the mp_print* family of functions, mainly mp_printf. All these functions take an mp_print_t structure as their first argument, and this structure defines the printing backend through the "print_strn" function of said structure. Printing from the uPy core can reach the platform-defined print code via two paths: either through mp_sys_stdout_obj (defined pert port) in conjunction with mp_stream_write; or through the mp_plat_print structure which uses the MP_PLAT_PRINT_STRN macro to define how string are printed on the platform. The former is only used when MICROPY_PY_IO is defined. With this new scheme printing is generally more efficient (less layers to go through, less arguments to pass), and, given an mp_print_t* structure, one can call mp_print_str for efficiency instead of mp_printf("%s", ...). Code size is also reduced by around 200 bytes on Thumb2 archs.
-
- 06 Apr, 2015 2 commits
-
-
Paul Sokolovsky authored
-
Paul Sokolovsky authored
-
- 14 Mar, 2015 1 commit
-
-
Damien George authored
These allow to fine-tune the compiler to select whether it optimises tuple assignments of the form a, b = c, d and a, b, c = d, e, f. Sensible defaults are provided.
-
- 13 Feb, 2015 1 commit
-
-
Damien George authored
-
- 20 Jan, 2015 1 commit
-
-
Paul Sokolovsky authored
Only modules (not packages) supported now. Source modules can be converted to frozen module structures using tools/make-frozen.py script.
-
- 15 Jan, 2015 1 commit
-
-
Paul Sokolovsky authored
-
- 13 Jan, 2015 2 commits
-
-
Paul Sokolovsky authored
This enable libc functions, GC, and line-editing function. Also, UART emulation for POSIX systems is added. Emulation build is set as default.
-
Paul Sokolovsky authored
Unlike bare-arm, which is mostly intended to show raw interpreter size, without library and support code dependencies. This port is intended to be a better base to start new ports, and also will include emulation build to allow debug some aspects of embedded targets on POSIX systems. This initial commit is verbatim copy of bare-arm code.
-
- 10 Jan, 2015 1 commit
-
-
Damien George authored
Compiler optimises lookup of module.CONST when enabled (an existing feature). Disabled by default; enabled for unix, windows, stmhal. Costs about 100 bytes ROM on stmhal.
-
- 16 Nov, 2014 1 commit
-
-
Paul Sokolovsky authored
-
- 06 Nov, 2014 1 commit
-
-
Damien George authored
Going from MICROPY_ERROR_REPORTING_NORMAL to MICROPY_ERROR_REPORTING_TERSE now saves 2020 bytes ROM for ARM Thumb2, and 2200 bytes ROM for 32-bit x86. This is about a 2.5% code size reduction for bare-arm.
-
- 23 Oct, 2014 1 commit
-
-
Damien George authored
-
- 08 Sep, 2014 1 commit
-
-
Damien George authored
-
- 24 Aug, 2014 1 commit
-
-
Damien George authored
Because (for Thumb) a function pointer has the LSB set, pointers to dynamic functions in RAM (eg native, viper or asm functions) were not being traced by the GC. This patch is a comprehensive fix for this. Addresses issue #820.
-
- 12 Aug, 2014 1 commit
-
-
Damien George authored
Also disable gc module on bare-arm port.
-
- 03 Jul, 2014 1 commit
-
-
Damien George authored
See discussion in issue #50.
-
- 27 Jun, 2014 2 commits
-
-
Paul Sokolovsky authored
Commented out so far, as enabled leads to dozen more bytes used actually (due to string pooling effects).
-
Paul Sokolovsky authored
To squeeze few more hundreds of bytes.
-
- 08 Jun, 2014 1 commit
-
-
Damien George authored
-
- 01 Jun, 2014 2 commits
-
-
Damien George authored
-
Damien George authored
This renames: MICROPY_PY_FROZENSET -> MICROPY_PY_BUILTINS_FROZENSET MICROPY_PY_PROPERTY -> MICROPY_PY_BUILTINS_PROPERTY MICROPY_PY_SLICE -> MICROPY_PY_BUILTINS_SLICE MICROPY_ENABLE_FLOAT -> MICROPY_PY_BUILTINS_FLOAT See issue #35 for discussion.
-
- 24 May, 2014 1 commit
-
-
Damien George authored
Now of the form MICROPY_PY_*. See issue #35.
-
- 21 May, 2014 1 commit
-
-
Damien George authored
MP_ALLOC_* -> MICROPY_ALLOC_* MICROPY_PATH_MAX -> MICROPY_ALLOC_PATH_MAX MICROPY_ENABLE_REPL_HELPERS -> MICROPY_HELPER_REPL MICROPY_ENABLE_LEXER_UNIX -> MICROPY_HELPER_LEXER_UNIX MICROPY_EXTRA_* -> MICROPY_PORT_* See issue #35.
-
- 26 Apr, 2014 1 commit
-
-
Damien George authored
-
- 13 Apr, 2014 1 commit
-
-
Damien George authored
-
- 12 Apr, 2014 1 commit
-
-
Damien George authored
-