| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2017-07-31 | all: Use the name MicroPython consistently in comments | Alexander Steffen | |
| There were several different spellings of MicroPython present in comments, when there should be only one. | |||
| 2017-07-18 | py/asmx64: Support moving a 64-bit immediate to one of top 8 registers. | Damien George | |
| If constants (eg mp_const_none_obj) are placed in very high memory locations that require 64-bits for the pointer then the assembler must be able to emit instructions to move such pointers to one of the top 8 registers (ie r8-r15). | |||
| 2016-12-09 | py/asm: Remove need for dummy_data when doing initial assembler passes. | Damien George | |
| For all but the last pass the assembler only needs to count how much space is needed for the machine code, it doesn't actually need to emit anything. The dummy_data just uses unnecessary RAM and without it the code is not any more complex (and code size does not increase for Thumb and Xtensa archs). | |||
| 2016-11-28 | py: Factor out common code from assemblers into asmbase.[ch]. | Damien George | |
| All assemblers should "derive" from mp_asm_base_t. | |||
| 2016-02-15 | py/asmx64: Support all 16 regs in reg to memory move instructions. | Damien George | |
| 2016-02-15 | py/asmx64: Add helper macro for generating REX_[WRXB] bits from a reg64. | Damien George | |
| 2015-10-13 | py: Implement ptr32 load and store in viper emitter. | Damien George | |
| 2015-06-04 | py: Implement native multiply operation in viper emitter. | Damien George | |
| 2015-04-09 | py: Adjust some spaces in code style/format, purely for consistency. | Damien George | |
| 2015-04-07 | py: Implement full func arg passing for native emitter. | Damien George | |
| This patch gets full function argument passing working with native emitter. Includes named args, keyword args, default args, var args and var keyword args. Fully Python compliant. It reuses the bytecode mp_setup_code_state function to do all the hard work. This function is slightly adjusted to accommodate native calls, and the native emitter is forced a bit to emit similar prelude and code-info as bytecode. | |||
| 2015-04-03 | py: Implement closures in native code generator. | Damien George | |
| Currently supports only x64 and Thumb2 archs. | |||
| 2015-02-14 | py/asm*.c: Typo fixes in comments. | Paul Sokolovsky | |
| 2015-01-22 | py: Allow asmx64 to compile with -Wsign-compare. | Damien George | |
| See issue #699. | |||
| 2015-01-14 | py: Allocate memory for assembled code at start of PASS_EMIT. | Damien George | |
| Previously was allocating at end of PASS_COMPUTE, and this pass was being run twice, so memory was being allocated twice. | |||
| 2015-01-12 | py: Make a function static and comment out those not used. | Damien George | |
| 2015-01-01 | py: Move to guarded includes, everywhere in py/ core. | Damien George | |
| Addresses issue #1022. | |||
| 2014-10-12 | py: Implement native load for viper. | Damien George | |
| Viper can now do: ptr8(buf)[0], which loads a byte from a buffer using machine instructions. | |||
| 2014-10-12 | py: Implement and,or,xor native ops for viper. | Damien George | |
| 2014-09-29 | py: Allow x86-64 to mov r16 to rm16 with extended src reg. | Damien George | |
| Fixes bug with x86-64 viper ptr16. | |||
| 2014-09-29 | py: Implement more binary ops for viper emitter. | Damien George | |
| This included a bit of restructuring of the assembler backends. Note that the ARM backend is missing a few functions and won't compile. | |||
| 2014-09-29 | py: Make macro names in assemblers consistent, and tidy up a bit. | Damien George | |
| 2014-09-29 | py: Add store r8 and store r16 ops to asm_x86 and asm_x64. | Damien George | |
| 2014-09-07 | py: Clean up x86-64 native assembler; allow use of extended regs. | Damien George | |
| Native x86-64 now has 3 locals in registers. | |||
| 2014-09-03 | Code style/whitespace cleanup; remove obsolete headers. | Damien George | |
| And move the MAP_ANON redefinition from py/asmx64.c to unix/alloc.c. | |||
| 2014-09-03 | Add cache flush in py/asmarm.c and add new MP_PLAT_ALLOC_EXEC and ↵ | Fabian Vogt | |
| MP_PLAT_FREE_EXEC macros Fixes issue #840 | |||
| 2014-06-21 | py: Include mpconfig.h before all other includes. | Paul Sokolovsky | |
| It defines types used by all other headers. Fixes #691. | |||
| 2014-05-07 | py, compiler: Improve passes; add an extra pass for native emitter. | Damien George | |
| 2014-05-03 | Add license header to (almost) all files. | Damien George | |
| Blanket wide to all .c and .h files. Some files originating from ST are difficult to deal with (license wise) so it was left out of those. Also merged modpyb.h, modos.h, modstm.h and modtime.h in stmhal/. | |||
| 2014-02-12 | Replace global "static" -> "STATIC", to allow "analysis builds". Part 2. | Paul Sokolovsky | |
| 2014-02-02 | py: Partially fix native emitter to work with latest runtime. | Damien George | |
| Native emitter has been broken since stack order has changed from reverse to standard. This fix gets it partially working. | |||
| 2014-01-28 | Added Windows port (see #233) | Markus Siemens | |
| 2014-01-07 | Factor and simplify Makefile's and mpconfig, part 2. | Damien George | |
| 2014-01-06 | py: Fix up number operations and coercion. | Damien George | |
| 2014-01-04 | Improve configurability for native x64/thumb emitter. | Damien George | |
| With MICROPY_EMIT_X64 and MICROPY_EMIT_THUMB disabled, the respective emitters and assemblers will not be included in the code. This can significantly reduce binary size for unix version. | |||
| 2014-01-02 | py: __MACH__ also uses MAP_ANON. | Damien George | |
| 2014-01-01 | On OpenBSD MAP_ANONYMOUS is called MAP_ANON. | Edd Barrett | |
| 2013-12-30 | Make unix-cpy cross platform; remove dependency of asmx64 on mpconfig. | Damien George | |
| 2013-12-30 | Make "unix" target be crossplatform and support x86, x64, ARM hosts. | Paul Sokolovsky | |
| 2013-12-29 | Change memory allocation API to require size for free and realloc. | Damien | |
| 2013-10-07 | Implement crude viper emit stage. | Damien | |
| 2013-10-05 | Compiler computes labels and max_num_labels. | Damien | |
| 2013-10-05 | Restructure emit so it goes through a method table. | Damien | |
| 2013-10-04 | Initial commit. | Damien | |
