summaryrefslogtreecommitdiffstatshomepage
path: root/py/asmarm.c
Commit message (Collapse)AuthorAge
* py/asmarm: Fix assembler's PASS_EMIT constant name.Damien George2017-01-03
|
* py/asm: Fix x86 and ARM assemblers due to recent code refactoring.Damien George2016-12-09
|
* py/asm: Remove need for dummy_data when doing initial assembler passes.Damien George2016-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: Factor out common code from assemblers into asmbase.[ch].Damien George2016-11-28
| | | | All assemblers should "derive" from mp_asm_base_t.
* py: Implement native multiply operation in viper emitter.Damien George2015-06-04
|
* emitnative: Revamp ARM codegen compile after full-arg support refactors.Paul Sokolovsky2015-05-08
| | | | | | The code was apparently broken after 9988618e0e0f5c319e31b135d993e22efb593093 "py: Implement full func arg passing for native emitter.". This attempts to propagate those changes to ARM emitter.
* py: Adjust some spaces in code style/format, purely for consistency.Damien George2015-04-09
|
* py: Allocate memory for assembled code at start of PASS_EMIT.Damien George2015-01-14
| | | | | Previously was allocating at end of PASS_COMPUTE, and this pass was being run twice, so memory was being allocated twice.
* py: Move to guarded includes, everywhere in py/ core.Damien George2015-01-01
| | | | Addresses issue #1022.
* asmarm: Fix bug with encoding small negative ints using MVN instruction.Paul Sokolovsky2014-12-14
|
* py: Implement native load for viper.Damien George2014-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 George2014-10-12
|
* Implement missing ARM emitter functions for viperFabian Vogt2014-10-04
|
* py: Implement more binary ops for viper emitter.Damien George2014-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 George2014-09-29
|
* 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.
* 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.
* 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
* Clarify copyright on asmarm filesFabian Vogt2014-08-28
|
* Basic native ARM emitterFabian Vogt2014-08-27