| Commit message (Collapse) | Author | Age |
| |
|
|\
| |
| | |
Add fsync for windows, i.e. _commit. See dce8876
|
| | |
|
|/
|
|
|
|
|
|
|
|
|
|
|
| |
With unicode enabled, this patch allows reading a fixed number of
characters from text-mode streams; eg file.read(5) will read 5 unicode
chars, which can made of more than 5 bytes.
For an ASCII stream (ie no chars > 127) it only needs to do 1 read. If
there are lots of non-ASCII chars in a stream, then it needs multiple
reads of the underlying object.
Adds a new test for this case. Enables unicode support by default on
unix and stmhal ports.
|
| |
|
|
|
|
| |
This method apparently should be part of stream interface.
|
|
|
|
|
| |
emitnative in particular requires nlr_* to be real functions, so doesn't
compile with MICROPY_NLR_SETJMP=1.
|
|
|
|
|
| |
But much smaller and memory-efficient. Uses Python builtin data structures
(dict, tuple, int) to describe structure layout.
|
|
|
|
|
| |
Implementing it as a static constant is a bit peculiar and require cooperation
from long int implementation.
|
|
|
|
| |
See discussion in issue #50.
|
| |
|
| |
|
|\
| |
| | |
windows: Sync mpconfigport.h with the unix' version
|
| |
| |
| |
| |
| |
| | |
- rearrange/add definitions that were not there so it's easier to compare both
- use MICROPY_PY_SYS_PLATFORM in main.c since it's available anyway
- define EWOULDBLOCK, it is missing from ingw32
|
|/ |
|
|
|
|
| |
This fixes count_lead_ones in misc.h not compiling due to unknown types
|
|
|
|
|
|
| |
Unicode is disabled by default for now, since FileIO.read(n) is
currently not implemented for text-mode files, and this is an
often function.
|
|
|
|
|
|
| |
As stack checking is enabled by default, ports which don't call
stack_ctrl_init() are broken now (report RuntimeError on startup). Save
them trouble and just init stack control framework in interpreter init.
|
|\
| |
| | |
unix: Remove unused CTRL-D definition
|
| | |
|
|/
|
|
|
|
|
|
| |
Such mechanism is important to get stable Python functioning, because Python
function calling is handled with C stack. The idea is to sprinkle
STACK_CHECK() calls in places where there can be C recursion.
TODO: Add more STACK_CHECK()'s.
|
|\
| |
| | |
msvc: Enable GC
|
| | |
|
| |
| |
| |
| |
| | |
The pointers to the bss section are acquired in init.c()
by inspecting the PE header. Works for msvc and mingw.
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| |
| | |
It sucks to workaround this on uPy side, but upgrading not upgradable
embedded systems sucks even more.
|
| | |
|
|/
|
|
| |
So, allocate one explicitly.
|
|
|
|
| |
These changes were tested with QEMU, and by few people of real hardware.
|
| |
|
|
|
|
|
|
| |
The idea is that it should be possible to pass any additional params for
experimentation without need to patch sources (and without need to deviate
from or repeat baseline options).
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
Some people want to enable even more warnings. Let them do it without putting
burden on everyone. Some people vice versa think that current settings should
be relaxed. In this regard, -Werror is the most problematic, it disallows to
use #warning directive, and disallows to pass configuration settings on make
command lines. Again, until decided how to deal with these globally, allow to
work around these problems locally.
|
| |
|
| |
|
|\ |
|
| |
| |
| |
| | |
- Move the includes for alloca() intp mpconfigport.h
|
| |
| |
| |
| |
| | |
Ports which wants to have it, should define MICROPY_PY_SYS_PLATFORM to a
string value they need.
|
|\ \
| | |
| | | |
toolchain fixes to enable cross compatibility
|
| |/
| |
| |
| |
| |
| |
| | |
there are special tweaks and paths to be considered. Just provide some
defaults, in case the values are undefined.
- py-version.sh does not need any bash specific features.
- Use libdl only on Linux for now. FreeBSD provides dl*() calls from libc.
|
|/
|
|
|
|
|
|
| |
cast error in MP_OBJ_NEW_SMALL_INT(). This is necessary for FreeBSD, where
st_ino is of different size
- If MP_CLOCKS_PER_SEC is defined on the target host, simply define CLOCK_DIV
as a fraction, regardless of the value of MP_CLOCKS_PER_SEC.
FreeBSD uses a non-POSIX compliant value of 128 for CLOCKS_PER_SEC
|
|\
| |
| | |
unix: Fix path seperator used depending on OS
|
| |
| |
| |
| | |
';' is the standard seperator used for paths in environment variables on Windows
|
|/ |
|
|
|
|
|
|
|
|
| |
As I suspected for a long time, for x86, register helper doesn't really make
any difference - there's simply not enough register to keep anything in
them for any prolonged time. Anything gets pushed on stack anyway. So, on
x86, uPy passed all tests even with empty reg helper. So, this setjmp
implementation goes as "untested".
|
|
|
|
|
| |
This allows to have multiple "optimization" levels (CPython has two
(-OO removes docstrings), we can have more).
|
| |
|