summaryrefslogtreecommitdiffstatshomepage
Commit message (Collapse)AuthorAge
* py: Make asm_arm_less_op take destination register as first arg.Damien George2014-09-15
| | | | This gets ARM native emitter working againg and addresses issue #858.
* py: Move definition of mp_sys_exit to core.Damien George2014-09-15
| | | | | | | | 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.
* py: Fix build error when float disabled; add test for divmod.Damien George2014-09-13
|
* py: Implement divmod, % and proper // for floating point.Damien George2014-09-13
| | | | Tested and working on unix and pyboard.
* Merge branch 'iabdalkader-memcpy'Damien George2014-09-13
|\
| * stmhal: Slightly improved memcpy; memset uses word store when aligned.Damien George2014-09-13
| |
| * Merge branch 'memcpy' of github.com:iabdalkader/micropython into ↵Damien George2014-09-12
|/| | | | | | | iabdalkader-memcpy
| * Optimize memcpy moreiabdalkader2014-09-11
| |
| * Memcpy: copy wordsiabdalkader2014-09-11
| |
* | py: Load strings as objects when compiling viper.Damien George2014-09-12
| | | | | | | | | | | | | | | | | | 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.
* | Merge branch 'master' of github.com:micropython/micropythonDamien George2014-09-11
|\ \
| * \ Merge pull request #852 from techno/staccel_LIS3DSHDamien George2014-09-11
| |\ \ | | |/ | |/| Add LIS3DSH accelometer support to staccel.py
| | * Add LIS3DSH accelometer support to staccel.pyHirotaka Kawata2014-09-11
| |/
* / py and libm: Add asinf,acosf; print higher precision for float.Damien George2014-09-11
|/ | | | | | Also use less stack space when printing single precision float. Addition of asinf and acosf addresses issue #851.
* py: Enable struct/binary-helper to parse q and Q sized ints.Damien George2014-09-10
| | | | Addresses issue #848.
* py: Put define of x86 argument registers in asmx86.h.Damien George2014-09-08
|
* py: Convert [u]int to mp_[u]int_t in emit.h and associated .c files.Damien George2014-09-08
| | | | Towards resolving issue #50.
* py: Print imported module's location (__file__) if available.Damien George2014-09-08
|
* stmhal: uart ioctl uses EINVAL, and checks TXE bit for write-ability.Damien George2014-09-07
|
* Remove skeletal modselect from extmod and just put it in stmhal.Damien George2014-09-07
|
* stmhal: Fix modselect so non-hashable objects can be polled.Damien George2014-09-07
|
* py: Rename mp_builtin_id to mp_obj_id and make it public.Damien George2014-09-07
|
* stmhal: Add polling ability to UART object.Damien George2014-09-07
|
* stmhal: Implement generic select.select and select.poll.Damien George2014-09-07
|
* py: Add ioctl method to stream protocol; add initial modselect.Damien George2014-09-07
|
* py: Clean up x86-64 native assembler; allow use of extended regs.Damien George2014-09-07
| | | | Native x86-64 now has 3 locals in registers.
* py: Adjust regs for x86 so that 1 more local can live in a reg.Damien George2014-09-06
|
* unix: Fix modffi to be able to return double on x86 machines.Damien George2014-09-06
|
* py: Allow x86 native functions to take arguments.Damien George2014-09-06
| | | | Fix some bugs with x86 stack and saving registers correctly.
* py: Add support for emitting native x86 machine code.Damien George2014-09-06
|
* Merge branch 'master' of github.com:micropython/micropythonDamien George2014-09-06
|\
| * modstruct: Implement 'O', 'P', 's' types for packed structs.Paul Sokolovsky2014-09-06
| | | | | | | | This is required to deal with, well, packed C structs containing pointers.
| * py: Correctly set sys.maxsize value for 64-bit.Paul Sokolovsky2014-09-06
| | | | | | | | | | | | 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.
* | tests: Enable misc tests on pyboard; output 4 sig figs in rge_sm.Damien George2014-09-06
| |
* | py: Native emitter now supports delete name & global, and end finally.Damien George2014-09-06
|/
* unix: Don't use -Wno-error=cpp or #warning; fix strict alias warning.Damien George2014-09-06
| | | | | | | | | | For the sake of older versions of gcc (and other compilers), don't use the #warning CPP directive, nor the -Wno-error=cpp option. Also, fix a strict alias warning in modffi.c for older compilers, and add a test for ffi module. Addresses issue #847.
* py: Fix definition of sys.maxsize with mpz changes.Damien George2014-09-06
|
* py: Make mpz able to use 16 bits per digit; and 32 on 64-bit arch.Damien George2014-09-06
| | | | | | | | | | | | | | | | Previously, mpz was restricted to using at most 15 bits in each digit, where a digit was a uint16_t. With this patch, mpz can use all 16 bits in the uint16_t (improvement to mpn_div was required). This gives small inprovements in speed and RAM usage. It also yields savings in ROM code size because all of the digit masking operations become no-ops. Also, mpz can now use a uint32_t as the digit type, and hence use 32 bits per digit. This will give decent improvements in mpz speed on 64-bit machines. Test for big integer division added.
* py: Convert (u)int to mp_(u)int_t in mpz, and remove unused function.Damien George2014-09-05
|
* py: Use % str formatting instead of {} in makeqstrdata.py.Damien George2014-09-05
| | | | | Script is equivalent, but now also runs under ancient Python 2.6. Goes part way to addressing issue #847.
* py: Use variable length encoded uints in more places in bytecode.Damien George2014-09-04
| | | | | | Code-info size, block name, source name, n_state and n_exc_stack now use variable length encoded uints. This saves 7-9 bytes per bytecode function for most functions.
* Code style/whitespace cleanup; remove obsolete headers.Damien George2014-09-03
| | | | And move the MAP_ANON redefinition from py/asmx64.c to unix/alloc.c.
* unix: Auto-detect MICROPY_EMIT_X64 and MICROPY_GCREGS_SETJMP.Damien George2014-09-03
| | | | | | If not set, MICROPY_EMIT_X64 is set only if on x86-64 machine. If not set, MICROPY_GCREGS_SETJMP is set when on MIPS.
* Merge pull request #845 from Vogtinator/masterDamien George2014-09-03
|\ | | | | Add allocation macros (per platform) and ARM cache flush
| * Add cache flush in py/asmarm.c and add new MP_PLAT_ALLOC_EXEC and ↵Fabian Vogt2014-09-03
|/ | | | | | MP_PLAT_FREE_EXEC macros Fixes issue #840
* Merge pull request #844 from chrisdearman/do_strDamien George2014-09-03
|\ | | | | Declare do_str() function before the implementation
| * Declare do_str() function before the implementationChris Dearman2014-09-01
| | | | | | | | | | | | This ensures that GCC does not discard the do_str implementation in some cases eg when compiling tests with debug enabled: make RUN_TESTS=1 DEBUG=1
* | Merge branch 'stinos-msvc-extmod'Damien George2014-09-02
|\ \ | |/ |/|
| * extmod: Fix type-punned-ptr error.Damien George2014-09-02
| |
| * Merge branch 'msvc-extmod' of github.com:stinos/micropython into ↵Damien George2014-09-02
|/| | | | | | | stinos-msvc-extmod