aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2015-01-13minimal: Add "run" make target to run emulated build with suitable tty config.Paul Sokolovsky
2015-01-13minimal: Convert "bare-arm" port to "minimal" port.Paul Sokolovsky
This enable libc functions, GC, and line-editing function. Also, UART emulation for POSIX systems is added. Emulation build is set as default.
2015-01-13minimal: New port, intended to represent minimal working code.Paul Sokolovsky
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.
2015-01-12py: Allow to compile with -Wstrict-prototypes.Damien George
2015-01-12py: Allow to compile with -Wredundant-decls.Damien George
2015-01-12py, unix, lib: Allow to compile with -Wold-style-definition.Damien George
2015-01-12py: Can compile with -Wmissing-declarations and -Wmissing-prototypes.Damien George
2015-01-12py: Make a function static and comment out those not used.Damien George
2015-01-12py, unix: Allow to compile with -Wdouble-promotion.Damien George
Ref issue #699.
2015-01-12qemu-arm: Disable basics/memoryerror.py test.Damien George
2015-01-12stmhal: Add MICROPY_HW_USB_OTG_ID_PIN config, set for relevant boards.Damien George
This config option is for the USB OTG pin, pin A10. This is used on some boards but not others. Eg PYBv3 uses PA10 for LED(2), so it shouldn't be used for OTG ID (actually PA10 is multiplexed on this board, but defaults to LED(2)). Partially addresses issue #1059.
2015-01-12travis: grep for failure in qemu-arm output if tests fail.Damien George
2015-01-12windows: Enable MICROPY_STACK_CHECK.Damien George
2015-01-12qemu-arm: Enable GC and native code-gen; enable more tests.Damien George
2015-01-12lib/mp-readline: Refactor to support coroutine/event-driven usage.Paul Sokolovsky
readline_process_char() can be fed character by character, for example, received from external event loop. This will allow to integrate MicroPython into cooperative multitasking systems.
2015-01-12teensy: Update for readline module moved to lib/.Paul Sokolovsky
2015-01-12esp8266: Update for readline module moved to lib/.Paul Sokolovsky
2015-01-12stmhal: Move readline code to lib/mp-readline/.Paul Sokolovsky
2015-01-11py/makeqstrdata.py: Make it work again with both Python2 and Python3.Damien George
2015-01-11py: Add MICROPY_QSTR_BYTES_IN_LEN config option, defaulting to 1.Damien George
This new config option sets how many fixed-number-of-bytes to use to store the length of each qstr. Previously this was hard coded to 2, but, as per issue #1056, this is considered overkill since no-one needs identifiers longer than 255 bytes. With this patch the number of bytes for the length is configurable, and defaults to 1 byte. The configuration option filters through to the makeqstrdata.py script. Code size savings going from 2 to 1 byte: - unix x64 down by 592 bytes - stmhal down by 1148 bytes - bare-arm down by 284 bytes Also has RAM savings, and will be slightly more efficient in execution.
2015-01-11py: Add qstr cfg capability; generate QSTR_NULL and QSTR_ from script.Damien George
2015-01-11py: Remove unnecessary BINARY_OP_EQUAL code that just checks pointers.Damien George
Previous patch c38dc3ccc76d1a9bf867704f43ea5d15da3fea7b allowed any object to be compared with any other, using pointer comparison for a fallback. As such, existing code which checked for this case is no longer needed.
2015-01-11py: Implement fallback for equality check for all types.Damien George
Return "not equal" for objects that don't implement equality check. This is as per Python specs.
2015-01-11py: Add (commented out) code to gc_dump_alloc_table for qstr info.Damien George
2015-01-11py/makeqstrdata.py: Add more allowed qstr characters; escape quot.Damien George
2015-01-11py: Fix hard-coded hash for empty qstr (was 0x0000 now 0x1505).Damien George
2015-01-10py: Add config option MICROPY_COMP_MODULE_CONST for module consts.Damien George
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.
2015-01-10tests: Make ffi_callback.py be able to run on uclibc and macosx.Paul Sokolovsky
Similar to ffi_float.py.
2015-01-09py: Fix handling of "0" mpz in some functions.Damien George
2015-01-09stmhal: Reclaim 72 bytes of stack by factoring out flash init code.Damien George
2015-01-09py: Make mem_info print correct remaining stack bytes.Damien George
2015-01-09windows: Enable MICROPY_PY_MICROPYTHON_MEM_INFO.Damien George
2015-01-09py: Add MICROPY_PY_MICROPYTHON_MEM_INFO to enable mem-info funcs.Damien George
This allows to enable mem-info functions in micropython module, even if MICROPY_MEM_STATS is not enabled. In this case, you get mem_info and qstr_info but not mem_{total,current,peak}.
2015-01-09py: Disable stack checking by default; enable on most ports.Damien George
2015-01-09qemu-arm: Add 'test' target to Makefile to run and verify test suite.Damien George
Replaces RUN_TEST=1 definition; now "make test" in qemu-arm directory will run tests/basics/ and check that they all succeed. This patch also enables the test on Travis CI.
2015-01-08docs: Add note about maximum frequency of busses.Damien George
2015-01-08qemu-arm: Get "make RUN_TESTS=1" compiling after changes to core.Damien George
2015-01-08qemu-arm: Set stack limit in main.Damien George
2015-01-08stmhal: Allow to build without float support if wanted.Damien George
2015-01-08tests: Add test for when instance member overrides class member.Damien George
2015-01-08py: Fix nlr mp_state_ctx symbol error for Mac.Damien George
2015-01-08tests: Separate out test cases that rely on float support to float/ dir.Damien George
2015-01-08unix: Allow to compile with float support disabled.Damien George
2015-01-08Remove obsolete bss-related code/build featuresstijn
GC for unix/windows builds doesn't make use of the bss section anymore, so we do not need the (sometimes complicated) build features and code related to it
2015-01-07stmhal: Add MICROPY_HW_USB_VBUS_DETECT_PIN option, for boards without itDamien George
Since all currently supported boards use pin A9 for this function, the value of the macro MICROPY_HW_USB_VBUS_DETECT_PIN is not actually used, just the fact that it is defined. Addresses issue #1048.
2015-01-07drivers/cc3000: Fix call to extint_register.Damien George
2015-01-07stmhal: Collect all root pointers together in 1 place.Damien George
A GC in stmhal port now only scans true root pointers, not entire BSS. This reduces base GC time from 1700ms to 900ms.
2015-01-08docs: Add initial "uctypes" modules docs. WIP.Paul Sokolovsky
2015-01-07py: Add option to cache map lookup results in bytecode.Damien George
This is a simple optimisation inspired by JITing technology: we cache in the bytecode (using 1 byte) the offset of the last successful lookup in a map. This allows us next time round to check in that location in the hash table (mp_map_t) for the desired entry, and if it's there use that entry straight away. Otherwise fallback to a normal map lookup. Works for LOAD_NAME, LOAD_GLOBAL, LOAD_ATTR and STORE_ATTR opcodes. On a few tests it gives >90% cache hit and greatly improves speed of code. Disabled by default. Enabled for unix and stmhal ports.
2015-01-07py: Put all global state together in state structures.Damien George
This patch consolidates all global variables in py/ core into one place, in a global structure. Root pointers are all located together to make GC tracing easier and more efficient.