- 29 Sep, 2014 6 commits
-
-
Damien George authored
This included a bit of restructuring of the assembler backends. Note that the ARM backend is missing a few functions and won't compile.
-
Damien George authored
Allows things like: if 1: ...
-
Damien George authored
-
Damien George authored
-
Damien George authored
-
Damien George authored
-
- 28 Sep, 2014 1 commit
-
-
bvernoux authored
-
- 26 Sep, 2014 1 commit
-
-
Damien George authored
It seems that newer versions of clang don't like the .bss directive, so we don't use it for OSX. Addressing issues #865 and #875.
-
- 25 Sep, 2014 3 commits
-
-
Damien George authored
The JSON specs are relatively flexible and allow us to use one function to print strings, be they ascii, bytes or utf-8 encoded.
-
Damien George authored
Addresses issue #864.
-
Damien George authored
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.
-
- 23 Sep, 2014 3 commits
-
-
Damien George authored
mp_parse_node_free now frees the memory associated with non-interned strings. And the parser calls mp_parse_node_free when discarding a non-used node (such as a doc string). Also, the compiler now frees the parse tree explicitly just before it exits (as opposed to relying on the caller to do this). Addresses issue #708 as best we can.
-
Damien George authored
-
Damien George authored
Stack is full descending and must be 8-byte aligned. It must start off pointing to just above the last byte of RAM. Previously, stack started pointed to last byte of RAM (eg 0x2001ffff) and so was not 8-byte aligned. This caused a bug in combination with alloca. This patch also updates some debug printing code. Addresses issue #872 (among many other undiscovered issues).
-
- 21 Sep, 2014 1 commit
-
-
Damien George authored
-
- 17 Sep, 2014 3 commits
-
-
Damien George authored
-
Damien George authored
Also add start of ujson module with dumps implemented. Enabled in unix and stmhal ports. Test passes on both.
-
Damien George authored
Heap RAM was being allocated to print dicts and do some other types of iterating. Now these iterations use 1 word of state on the stack. Deleting elements from a dict was not allowing the value to be reclaimed by the GC. This is now fixed.
-
- 15 Sep, 2014 2 commits
-
-
Damien George authored
This gets ARM native emitter working againg and addresses issue #858.
-
Damien George authored
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.
-
- 13 Sep, 2014 2 commits
-
-
Damien George authored
-
Damien George authored
Tested and working on unix and pyboard.
-
- 12 Sep, 2014 1 commit
-
-
Damien George authored
Eventually, viper wants to be able to use raw pointers to strings and arrays for efficient access. But for now, let's just load strings as a Python object so they can be used as normal. This will anyway be compatible with eventual intended viper behaviour. Addresses issue #857.
-
- 11 Sep, 2014 1 commit
-
-
Damien George authored
Also use less stack space when printing single precision float. Addition of asinf and acosf addresses issue #851.
-
- 10 Sep, 2014 1 commit
-
-
Damien George authored
Addresses issue #848.
-
- 08 Sep, 2014 3 commits
-
-
Damien George authored
-
Damien George authored
Towards resolving issue #50.
-
Damien George authored
-
- 07 Sep, 2014 5 commits
-
-
Damien George authored
-
Damien George authored
-
Damien George authored
-
Damien George authored
-
Damien George authored
Native x86-64 now has 3 locals in registers.
-
- 06 Sep, 2014 7 commits
-
-
Damien George authored
-
Damien George authored
Fix some bugs with x86 stack and saving registers correctly.
-
Damien George authored
-
Damien George authored
-
Paul Sokolovsky authored
This is required to deal with, well, packed C structs containing pointers.
-
Paul Sokolovsky authored
Type representing signed size doesn't have to be int, so use special value which defaults to SSIZE_MAX, but as it's not defined by C standard (but rather by POSIX), allow ports to set it.
-
Damien George authored
-