summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
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.
2015-01-07py: Temporary fix for conversion of float to int when fits in small int.Damien George
Addresses issue #1044 (see also #1040). Could do with a better fix.
2015-01-07showbc: Show conditional jump destination as unsigned value.Paul Sokolovsky
This is consistent with how BC_JUMP was handled before. We never show jumps destinations relative to jump instrucion itself, only relative to beginning of function. Another useful way to show them as absolute (real memory address), and this change makes result expected and consistent with how BC_JUMP is shown.
2015-01-06docs: For Windows USB CDC driver setup, add link to existing PDF guide.Damien George
2015-01-04objarray: Make sure that longint works as bytearray size.Paul Sokolovsky
2015-01-04msvc: Define no-op MP_LIKELY/UNLIKELY since there's no __builtin_expectstijn
2015-01-04modbuiltins.c: Fix NULL vs MP_OBJ_NULL usage.Paul Sokolovsky
2015-01-04objstr: Common subexpression elimination for vstr_str(field_name).Paul Sokolovsky
2015-01-04objstr: Implement kwargs support for str.format().Paul Sokolovsky
2015-01-03unix: Enable -fno-crossjumping for fast build.Paul Sokolovsky
Confirmed that it improves perfomance of simple "for i in range(N): pass" loop by 15% on Core2.
2015-01-02py: Raise exception if trying to convert inf/nan to int.Damien George
2015-01-02py: Fix float to int conversion for large exponents.David Steinberg
2015-01-02msvc: Use single build target for dealing with generated filesstijn
Remove some duplication in the code for generating qstrdefs.generated.h and py-version.h
2015-01-02msvc: Fix unresolved mp_arg_error_terse_mismatch since 7f23384stijn
The compiler treats `if (MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE)` as a normal statement and generates assembly for it in degug mode as if MICROPY_ERROR_REPORTING is an actual symbol instead of a preprocessor definition. As such linking fails because mp_arg_error_terse_mismatch is not defined when MICROPY_ERROR_REPORTING_TERSE is detailed or normal.
2015-01-02msvc: Define main build/include directories in a single locationstijn
- Use a single file env.props for defining the main directories used when building. env.props resolves the base directory and defines overridable output directories, and is used by all other build files. - Fix the build currently failing, basically because the preprocessing command for generating qstrdefs uses different include directories than the build itself does. (specifically, qstrdefs.h uses #include "py/mpconfig.h" since the fixes for #1022 in 51dfcb4, so we need to use the base directory as include directory, not the py dir itself). So define a single variable containing the include directories instead and use it where needed.
2015-01-01py: Make GC's STACK_SIZE definition a proper MICROPY_ config variable.Damien George
2015-01-01py: Fix windows external name error for nlr_top.Damien George
2015-01-01py: Move global variable nlr_top to one place, in a .c file.Damien George
This reduces dependency on assembler, and allows to consolidate global variables in the future.
2015-01-01windows: Prefix includes with py/; remove need for -I../py.Damien George
2015-01-01esp8266: Prefix includes with py/; remove need for -I../py.Damien George
2015-01-01qemu-arm: Prefix includes with py/; remove need for -I../py.Damien George
2015-01-01bare-arm: Prefix includes with py/; remove need for -I../py.Damien George
2015-01-01teensy: Prefix includes with py/; remove need for -I../py.Damien George
2015-01-01stmhal: Prefix includes with py/; remove need for -I../py.Damien George
2015-01-01unix-cpy: Prefix includes with py/; remove need for -I../py.Damien George
2015-01-01unix: Prefix includes with py/; remove need for -I../py.Damien George
2015-01-01extmod: Prefix py/ for includes from py core directory.Damien George
2015-01-01py: Move to guarded includes, everywhere in py/ core.Damien George
Addresses issue #1022.
2015-01-01emitnative: Disable warning in delete_fast for now (breaks test).Paul Sokolovsky
2015-01-01py: Add basic framework for issuing compile/runtime warnings.Paul Sokolovsky
2015-01-01py: Add guarded includes for asm-based headers.Damien George
2015-01-01docs: Add quickref info about Servo; improve Servo docs.Damien George
2015-01-01Add a command for converting the WAV filesRadomir Dopieralski
Add a command for converting the WAV files to the amp skin tutorial, so that people can use their own files easily.
2015-01-01py: Change namedtuple error messages to reduce code size.Damien George
We are not word-for-word compatible with CPython exceptions, so we are free to make them short but informative in order to reduce code size. Also, try to make messages the same as existing ones where possible.
2015-01-01py: Make terse_arg_mismatch a global function and use it elsewhere.Damien George
Reduces code size when MICROPY_ERROR_REPORTING_TERSE is selected.
2015-01-01objnamedtuple: Make sure to initialize type structure completely.Paul Sokolovsky
2015-01-01py: Allow keyword arguments for namedtuplestijn
2015-01-01py: Use sequence of strings for named tuple initializationstijn
- remove single string initialization style - take list of strings instead - store list in the type for fast lookup
2015-01-01msvc: Support py/*.h includes per #1022stijn
2014-12-31py: Fix rshift and not of zero/one edge cases in mpz.Damien George
Addresses issue #1027.
2014-12-31tests: Disable float/float2int.py on pyboard (needs double prec).Damien George
2014-12-31objstr: Fix %d-formatting of floats.Paul Sokolovsky
2014-12-30stmhal: Add fake implementation of __aeabi_f2lz().Paul Sokolovsky
To make mp_obj_new_int_from_float() somehow work.
2014-12-30py: mp_obj_new_int_from_float() supported only for MICROPY_PY_BUILTINS_FLOAT.Paul Sokolovsky
2014-12-30py: Implement mp_obj_new_int_from_float() for MICROPY_LONGINT_IMPL_NONE.Paul Sokolovsky