| Commit message (Collapse) | Author | Age |
|
|
|
|
|
| |
The specifier should go after the number, before size suffix like 'k' or 'm'.
E.g.: "-X heapsize=100wk" will use 100K heap on 32-bit system and 200K - on
64-bit.
|
|
|
|
| |
For this, introduce MICROPY_MODULE_DICT_SIZE config setting.
|
|
|
|
|
|
|
|
|
| |
This build is primarily intended for benchmarking, and may have random
features enabled/disabled to get high scores in synthetic benchmarks.
The intent is to show/prove that MicroPython codebase can compete with
CPython, when configured appropriately. But the main MicroPython aim
still remains to optimize for memory usage (which inevitibly leads to
performance degradation in some areas on some workloads).
|
|
|
|
|
|
| |
gc.enable/disable are now the same as CPython: they just control whether
automatic garbage collection is enabled or not. If disabled, you can
still allocate heap memory, and initiate a manual collection.
|
| |
|
|
|
|
| |
Also, move bytecode dumps to -v -v, because they're too verbose for just -v.
|
|
|
|
|
|
|
|
| |
Support for packages as argument not implemented, but otherwise error and
exit handling should be correct. This for example will allow to do:
pip-micropython install micropython-test.pystone
micropython -m test.pystone
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
This allows to implement KeyboardInterrupt on unix, and a much safer
ctrl-C in stmhal port. First ctrl-C is a soft one, with hope that VM
will notice it; second ctrl-C is a hard one that kills anything (for
both unix and stmhal).
One needs to check for a pending exception in the VM only for jump
opcodes. Others can't produce an infinite loop (infinite recursion is
caught by stack check).
|
|
|
|
|
|
|
| |
This should be pretty compliant with CPython, except perhaps for some
corner cases to do with globals/locals context.
Addresses issue #879.
|
|
|
|
| |
For kilobytes and megabytes respectively.
|
|
|
|
| |
In unix port, mem_info(1) now prints pretty GC alloc table.
|
| |
|
| |
|
|
|
|
|
|
|
| |
This makes open() and _io.FileIO() more CPython compliant.
The mode kwarg is fully iplemented.
The encoding kwarg is allowed but not implemented; mainly to allow
the tests to specify encoding for CPython, see #874
|
|
|
|
|
|
| |
Also, usocket.readinto(). Known issue is that .readinto() should be available
only for binary files, but micropython uses single method table for both
binary and text files.
|
|
|
|
| |
Addresses issue #915.
|
| |
|
|\
| |
| |
| | |
pfalcon-modure
|
| |
| |
| |
| | |
https://github.com/pfalcon/re1.5
|
| | |
|
|/ |
|
|
|
|
|
|
| |
Per new conventions, we'd like to consistently use "u*" naming conventions
for modules which don't offer complete CPython compatibility, while offer
subset or similar API.
|
| |
|
| |
|
|
|
|
| |
This should pretty much resolve issue #50.
|
|
|
|
| |
Addresses issue #859.
|
| |
|
|
|
|
|
|
| |
It seems most sensible to use size_t for measuring "number of bytes" in
malloc and vstr functions (since that's what size_t is for). We don't
use mp_uint_t because malloc and vstr are not Micro Python specific.
|
|
|
|
| |
Add more specific comments describing what is going on.
|
| |
|
|
|
|
|
|
|
| |
Force OSX to compile with clang even if gcc is available
Change LDFLAGS syntax to be compatible with clang
Fix questionable syntax on line 90
Remove extraneous tab character
|
|
|
|
|
| |
Also add start of ujson module with dumps implemented. Enabled in unix
and stmhal ports. Test passes on both.
|
|
|
|
|
|
|
|
| |
sys.exit always raises SystemExit so doesn't need a special
implementation for each port. If C exit() is really needed, use the
standard os._exit function.
Also initialise mp_sys_path and mp_sys_argv in teensy port.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
For the sake of older versions of gcc (and other compilers), don't use
the #warning CPP directive, nor the -Wno-error=cpp option.
Also, fix a strict alias warning in modffi.c for older compilers, and
add a test for ffi module.
Addresses issue #847.
|
|
|
|
| |
And move the MAP_ANON redefinition from py/asmx64.c to unix/alloc.c.
|
|
|
|
|
|
| |
If not set, MICROPY_EMIT_X64 is set only if on x86-64 machine.
If not set, MICROPY_GCREGS_SETJMP is set when on MIPS.
|
|
|
|
|
|
| |
MP_PLAT_FREE_EXEC macros
Fixes issue #840
|
|
|
|
| |
Part of code cleanup, working towards resolving issue #50.
|
|
|
|
| |
Part of code cleanup, working towards resolving issue #50.
|
|
|
|
| |
Part of code cleanup, to resolve issue #50.
|
|
|
|
| |
Addressing issue #50, still some way to go yet.
|
|
|
|
|
|
|
| |
Also add -t/--target option to pip-micropython to allowing installing to
the pyboard.
Thanks to turbinenreiter/Sebastian Plamauer for the patch.
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
|
|
|
|
| |
Also provides setraw() function from "tty" module (which in CPython is
implemented in Python). The idea here is that 95% of "termios" module usage
is to set raw mode to allow access to normal serial devices. Then, instead
of exporting gazillion termios symbols, it's better to implement it in C,
and export minimal number of symbols (mostly baud rates and drain values).
|
|\
| |
| | |
unix: Added install/uninstall
|
| | |
|