Commit message (Collapse) | Author | Age | |
---|---|---|---|
* | py/asm: Remove need for dummy_data when doing initial assembler passes. | Damien George | 2016-12-09 |
| | | | | | | | | 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). | ||
* | py: Move arch-specific assembler macros from emitnative to asmXXX.h. | Damien George | 2016-12-09 |
| | |||
* | py: Factor out common code from assemblers into asmbase.[ch]. | Damien George | 2016-11-28 |
| | | | | All assemblers should "derive" from mp_asm_base_t. | ||
* | py: Implement native multiply operation in viper emitter. | Damien George | 2015-06-04 |
| | |||
* | py: Implement full func arg passing for native emitter. | Damien George | 2015-04-07 |
| | | | | | | | | | | | 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. | ||
* | py: Add guarded includes for asm-based headers. | Damien George | 2015-01-01 |
| | |||
* | py: Implement native load for viper. | Damien George | 2014-10-12 |
| | | | | | Viper can now do: ptr8(buf)[0], which loads a byte from a buffer using machine instructions. | ||
* | py: Implement and,or,xor native ops for viper. | Damien George | 2014-10-12 |
| | |||
* | py: Implement more binary ops for viper emitter. | Damien George | 2014-09-29 |
| | | | | | This included a bit of restructuring of the assembler backends. Note that the ARM backend is missing a few functions and won't compile. | ||
* | 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-29 |
| | |||
* | py: Put define of x86 argument registers in asmx86.h. | Damien George | 2014-09-08 |
| | |||
* | py: Clean up x86-64 native assembler; allow use of extended regs. | Damien George | 2014-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 George | 2014-09-06 |
| | |||
* | py: Allow x86 native functions to take arguments. | Damien George | 2014-09-06 |
| | | | | Fix some bugs with x86 stack and saving registers correctly. | ||
* | py: Add support for emitting native x86 machine code. | Damien George | 2014-09-06 |