Commit message (Collapse) | Author | Age | |
---|---|---|---|
* | py/mkrules.mk: Don't pass COPT to linker. | Paul Sokolovsky | 2015-12-10 |
| | | | | | | Oftentimes, libc, libm, etc. don't come compiled with CPU compressed code option (Thumb, MIPS16, etc.), but we may still want to use such compressed code for MicroPython itself. | ||
* | py: Add mp_get_stream_raise to factor out check for stream methods. | Damien George | 2015-12-09 |
| | |||
* | py: Fix calling of parent classmethod from instance of subclass. | Damien George | 2015-12-09 |
| | | | | Addresses issue #1697. | ||
* | py: Don't try to optimise for+range when args are not simple expressions. | Damien George | 2015-12-08 |
| | | | | Addresses issue #1693. | ||
* | py/misc.h: Include stdint.h only once (unconditionally at the top). | Paul Sokolovsky | 2015-12-08 |
| | |||
* | py/misc.h: Include stdint.h, as large share of code now depends on it. | Paul Sokolovsky | 2015-12-07 |
| | |||
* | py: Add min/max "default" keyword argument | pohmelie | 2015-12-07 |
| | |||
* | py: Add MICROPY_PY_BUILTINS_MIN_MAX, disable for minimal ports. | pohmelie | 2015-12-07 |
| | |||
* | py: Make it easy to build without MICROPY_PY_BUILTINS_COMPLEX. | Paul Sokolovsky | 2015-12-07 |
| | | | | Automagically skip related modules. | ||
* | py/modsys: Use MP_ROM_PTR() initializer for sys.modules. | Paul Sokolovsky | 2015-12-05 |
| | | | | Based on similar usage for sys.argv/sys.path. | ||
* | py/modsys: Implement sys.modules. | Paul Sokolovsky | 2015-12-05 |
| | | | | | This for example will allow people to reload modules which didn't load successfully (e.g. due to syntax error). | ||
* | py: Fix function calls that have positional and a star-arg-with-iterator. | Damien George | 2015-12-03 |
| | | | | Addresses issue #1678. | ||
* | py/mpconfig: Actually allow to override MICROPY_BYTES_PER_GC_BLOCK. | Paul Sokolovsky | 2015-12-03 |
| | |||
* | py/gc: Make GC block size be configurable. | Paul Sokolovsky | 2015-12-03 |
| | |||
* | py/mpprint: Printing of doubles is now supported (by uPy own routine). | fabien.lementec | 2015-12-02 |
| | |||
* | py: Add support for 64-bit NaN-boxing object model, on 32-bit machine. | Damien George | 2015-11-29 |
| | | | | | | | | | | | | | To use, put the following in mpconfigport.h: #define MICROPY_OBJ_REPR (MICROPY_OBJ_REPR_D) #define MICROPY_FLOAT_IMPL (MICROPY_FLOAT_IMPL_DOUBLE) typedef int64_t mp_int_t; typedef uint64_t mp_uint_t; #define UINT_FMT "%llu" #define INT_FMT "%lld" Currently does not work with native emitter enabled. | ||
* | py: Wrap all obj-ptr conversions in MP_OBJ_TO_PTR/MP_OBJ_FROM_PTR. | Damien George | 2015-11-29 |
| | | | | | | | | | This allows the mp_obj_t type to be configured to something other than a pointer-sized primitive type. This patch also includes additional changes to allow the code to compile when sizeof(mp_uint_t) != sizeof(void*), such as using size_t instead of mp_uint_t, and various casts. | ||
* | py: Add MP_ROM_* macros and mp_rom_* types and use them. | Damien George | 2015-11-29 |
| | |||
* | py/gc: Move away from using mp_uint_t, instead use uintptr_t and size_t. | Damien George | 2015-11-29 |
| | | | | The GC works with concrete pointers and so the types should reflect this. | ||
* | py: Use uintptr_t instead of mp_uint_t in MP_TAGPTR_* macros. | Damien George | 2015-11-29 |
| | |||
* | py: Make mp_setup_code_state take concrete pointer for func arg. | Damien George | 2015-11-29 |
| | |||
* | py/emit: Change type of arg of load_const_obj from void* to mp_obj_t. | Damien George | 2015-11-29 |
| | |||
* | py: Change qstr_* functions to use size_t as the type for str len arg. | Damien George | 2015-11-29 |
| | |||
* | py: Change mp_print_strn_t func type to use size_t for the str length. | Damien George | 2015-11-29 |
| | |||
* | py/asmx86: Fix function definition to use int32_t instead of int. | Damien George | 2015-11-27 |
| | |||
* | py/binary: Make use of MP_ALIGN. | Damien George | 2015-11-27 |
| | |||
* | py/mpconfig.h: Allow to build without alloca() for ANSI C compliance. | Paul Sokolovsky | 2015-11-25 |
| | | | | | Define MICROPY_NO_ALLOCA=1 and memory will be allocated from heap instead and freed by garbage collection. | ||
* | extmod/fsusermount: Make configurable with MICROPY_FSUSERMOUNT. | Paul Sokolovsky | 2015-11-25 |
| | |||
* | extmod: Move fsusermount.c from stmhal for cross-port reuse. | Paul Sokolovsky | 2015-11-25 |
| | |||
* | windows/py: Support 64bit mingw-w64 builds | stijn | 2015-11-24 |
| | | | | | | | | - add mp_int_t/mp_uint_t typedefs in mpconfigport.h - fix integer suffixes/formatting in mpconfig.h and mpz.h - use MICROPY_NLR_SETJMP=1 in Makefile since the current nlrx64.S implementation causes segfaults in gc_free() - update README | ||
* | nlr: Use single preprocessor symbol to check if building on Windows | stijn | 2015-11-24 |
| | |||
* | py/compile: Do proper checking of * and ** in function definition. | Damien George | 2015-11-23 |
| | | | | | This patch checks that there is only one *, and that ** is last in the arg list. | ||
* | py: Check that second argument to hasattr is actually a string. | Damien George | 2015-11-23 |
| | | | | Fixes issue #1623. | ||
* | py/emitglue: Implement persistent saving and loading of const objects. | Damien George | 2015-11-23 |
| | |||
* | py/emitglue: Add feature-flag header to .mpy to detect bytecode compat. | Damien George | 2015-11-23 |
| | | | | | Loading .mpy files will now check to make sure that the target VM can support the bytecode. | ||
* | py/mpz: Normalize (remove leading zeros) xor operation result. | Paul Sokolovsky | 2015-11-22 |
| | |||
* | py/formatfloat: Handle calculation of integer digit for %f format properly. | Paul Sokolovsky | 2015-11-22 |
| | | | | | %f prints true integer digit, so its calculation should happen before any exponential scaling. | ||
* | py/formatfloat: Workaround (fix?) incorrect rounding for %f format. | Paul Sokolovsky | 2015-11-22 |
| | |||
* | py/formatfloat: Convert to fully portable implementation. | Paul Sokolovsky | 2015-11-22 |
| | | | | | | | | | | | This takes previous IEEE-754 single precision float implementation, and converts it to fully portable parametrizable implementation using C99 functions like signbit(), isnan(), isinf(). As long as those functions are available (they can be defined in adhoc manner of course), and compiler can perform standard arithmetic and comparison operations on a float type, this implementation will work with any underlying float type (including types whose mantissa is larger than available intergral integer type). | ||
* | py/emitglue: Host definition of mp_verbose_flag. | Paul Sokolovsky | 2015-11-21 |
| | | | | | This may not seem like the ideal place, but is actually the only place in py/ where it gets referenced, so is just right. | ||
* | py/modsys: Consistently use indented #if's. | Paul Sokolovsky | 2015-11-21 |
| | |||
* | py: Use MP_OBJ_NULL instead of NULL when appropriate. | Damien George | 2015-11-20 |
| | |||
* | py/emitglue: Add mp_raw_code_load_mem to load raw-code from memory. | Damien George | 2015-11-20 |
| | |||
* | py/emitglue: Only compile raw-code fatfs loader when on thumb2 platform. | Damien George | 2015-11-20 |
| | | | | | | Here we are assuming that a thumb2 port will have fatfs, which is only roughly true. We need a better way of enabling specific raw-code file readers. | ||
* | py/compile: Add mp_compile_to_raw_code() to return raw code object. | Damien George | 2015-11-20 |
| | | | | This can then be passed to mp_raw_code_save_file to save a .mpy file. | ||
* | py: Added Cygwin support to py/nlrx86.S. | Igor Gatis | 2015-11-19 |
| | |||
* | py/map: Store key/value in earliest possible slot in hash table. | Damien George | 2015-11-19 |
| | | | | | | | | This change makes the code behave how it was supposed to work when first written. The avail_slot variable is set to the first free slot when looking for a key (which would come from deleting an entry). So it's more efficient (for subsequent lookups) to insert a new key into such a slot, rather than the very last slot that was searched. | ||
* | py/mpstate: Make mp_pending_exception volatile. | Damien George | 2015-11-17 |
| | | | | It can change asynchronously. | ||
* | py/modmath: Make log2, log10 and hyperbolic funcs be SPECIAL_FUNCTIONS. | Damien George | 2015-11-17 |
| | | | | | | Will be included only when MICROPY_PY_MATH_SPECIAL_FUNCTIONS is enabled. Also covers cmath module (but only log10 is there at the moment). | ||
* | py: Implement default and star args for lambdas. | Damien George | 2015-11-17 |
| |