summaryrefslogtreecommitdiff
path: root/py
AgeCommit message (Collapse)Author
2014-06-25modgc: Add mem_free()/mem_alloc() methods.Paul Sokolovsky
Return free/allocated memory on GC heap.
2014-06-25Merge branch 'master' of github.com:micropython/micropythonDamien George
2014-06-22py: Implement delete_attr in native emitter.Damien George
2014-06-22py: Support arm and thumb ARM ISAs, in addition to thumb2.Paul Sokolovsky
These changes were tested with QEMU, and by few people of real hardware.
2014-06-21py: Include mpconfig.h before all other includes.Paul Sokolovsky
It defines types used by all other headers. Fixes #691.
2014-06-20mkrules.mk: Pass $(COPT) to link stage.Paul Sokolovsky
In generalize case, optimization options should be passed to all stages of the build process.
2014-06-20makefile: Pass STRIPFLAGS_EXTRA to strip.Paul Sokolovsky
Expected to be set on command line, with the idea being that for different targets, there're different smartass ABIs which strive to put unneeded sections into executables, etc., so let people have flexible way to strip that. The option name is similar to previously introduced CLFAGS_EXTRA & LDFLAGS_EXTRA.
2014-06-20py: Separate MICROPY_PY_BUILTINS_COMPLEX from MICROPY_PY_BUILTINS_FLOAT.Paul Sokolovsky
One thing is wanting to do 1 / 2 and get something else but 0, and quite another - doing rocket science ;-).
2014-06-20Merge pull request #697 from stinos/gc-debugPaul Sokolovsky
gc: More verbose debugging
2014-06-19Prefix ARRAY_SIZE with micropython prefix MP_Emmanuel Blot
2014-06-19Add missing “assert.h” file header inclusion from “nlr.h”Emmanuel Blot
2014-06-18gc: Turn off debugging info againstijn
2014-06-18gc: Keep debug statements at beginning of scope where possiblestijn
2014-06-16gc: More verbose debuggingstijn
Add more DEBUG_printf statements to trace gc behaviour
2014-06-14parsenum: Signedness issues.Paul Sokolovsky
char can be signedness, and using signedness types is dangerous - it can lead to negative offsets when doing table lookups. We apparently should just ban char usage.
2014-06-14objstr: Refactor to work with char pointers instead of indexes.Paul Sokolovsky
In preparation for unicode support.
2014-06-14unicode: Add trivial implementation of unichar_charlen().Paul Sokolovsky
2014-06-14unicode: String API is const byte*.Paul Sokolovsky
We still have that char vs byte dichotomy, but majority of string operations now use byte.
2014-06-14objstr: Be 8-bit clean even for repr().Paul Sokolovsky
This will allow roughly the same behavior as Python3 for non-ASCII strings, for example, print("<phrase in non-Latin script>".split()) will print list of words, not weird hex dump (like Python2 behaves). (Of course, that it will print list of words, if there're "words" in that phrase at all, separated by ASCII-compatible whitespace; that surely won't apply to every human language in existence).
2014-06-13py, gc: Revert ret_ptr to void*, casting to byte* for memset.Damien George
2014-06-13Merge branch 'gc-pointers' of github.com:stinos/micropython into ↵Damien George
stinos-gc-pointers
2014-06-13stream: Use mp_obj_is_true() for EOF testing.Paul Sokolovsky
Getting a length of string may be expensive, depending on the underlying implementation.
2014-06-13gc: Use byte* pointers instead of void* for pointer arithmeticstijn
void* is of unknown size
2014-06-12py: Revert change of include, "" back to <> for mpconfigport.h.v1.1Damien George
2014-06-12py: Rename builtin "io" to "_io".Paul Sokolovsky
Functionality we provide in builtin io module is fairly minimal. Some code, including CPython stdlib, depends on more functionality. So, there's a choice to either implement it in C, or move it _io, and let implement other functionality in Python. 2nd choice is pursued. This setup matches CPython too (_io is builtin, io is Python-level).
2014-06-11py: Make 3 functions static.Damien George
2014-06-11py: Fix static defn in qstr; include mpconfigport.h with "" (not <>).Damien George
2014-06-11objfun: Remove no longer used mp_obj_fun_prepare_simple_args().Paul Sokolovsky
2014-06-11objgenerator: Finish refactor to use mp_setup_code_state().Paul Sokolovsky
2014-06-11objgenerator: First iteration of refactor to use mp_setup_code_state().Paul Sokolovsky
2014-06-11objfun: Factor out mp_setup_code_state() function to set up code_state object.Paul Sokolovsky
It needs to be reused for generator functions, too.
2014-06-10py: Implement __contains__ special method.Damien George
2014-06-10Remove unnecessary bounds check from mp_seq_get_fast_slice_indexes.Chris Angelico
At this point, start will be >= 0, so checking if stop < 0 is redundant with checking if start > stop a few lines later.
2014-06-08objtype: Fix passing of class param to inherited classmethods.Paul Sokolovsky
This is getting more and more tangled, but that's old news.
2014-06-08objtype: Optimize stack usage mp_obj_class_lookup().Paul Sokolovsky
As before, instead of pushing constant values on stack again and again, just pass around pointer to a structure.
2014-06-08Merge branch 'alloca' of github.com:marcusva/micropython into marcusva-allocaDamien George
2014-06-08py: Simplify function call of a bytecode object.Damien George
2014-06-08py: Make sure getattr() works with non-interned strings (by interning them).Paul Sokolovsky
2014-06-07Merge branch 'master' of github.com:micropython/micropythonDamien George
Conflicts: py/emitglue.c
2014-06-08objtype: Enable __lt__ method support for instances.Paul Sokolovsky
2014-06-07py: Implement default keyword only args.Damien George
Should finish addressing issue #524.
2014-06-07modsys: Add optional support for sys.platform.Paul Sokolovsky
Ports which wants to have it, should define MICROPY_PY_SYS_PLATFORM to a string value they need.
2014-06-07py: Add generic mp_not_implemented() func to use instead of assert().Paul Sokolovsky
Benefits: won't crash baremetal targets, will provide Python source location when not implemented feature used (it will no longer provide C source location, but just grep for error message).
2014-06-07py: Merge mp_execute_bytecode into fun_bc_call.Damien George
This reduces stack usage by 16 words (64 bytes) for stmhal/ port. See issue #640.
2014-06-07py, mk: Revert change where build variables set with ?=.Damien George
?= operator does not do delayed expansion (unlike =).
2014-06-07- FreeBSD provides alloca() via stdlib.h, in contrast to Linux and WindowsMarcus von Appen
- Move the includes for alloca() intp mpconfigport.h
2014-06-07- Let the build environment decide about the toolchain to be used, in caseMarcus von Appen
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.
2014-06-07Bring the C and Python compute_hash functions into consistencyChris Angelico
2014-06-06objint: Fix corner case in buffer access.Paul Sokolovsky
2014-06-05Fix str.modulo when precision is specified.Dave Hylands