summaryrefslogtreecommitdiff
path: root/py/emitnative.c
AgeCommit message (Expand)Author
2024-08-07py/emitnative: Fix case of clobbered REG_TEMP0 when loading const obj.Damien George
2024-06-21py/emitnative: Fix native async with.Damien George
2024-06-21py/emitnative: Place thrown value in dedicated local variable.Damien George
2024-06-21py/emitndebug: Add native debug emitter.Damien George
2024-06-21py/emitnative: Add more DEBUG_printf statements.Damien George
2024-06-21py/emitnative: Emit better load/store sequences for RISC-V RV32IMC.Alessandro Gatti
2024-06-21py/asmrv32: Add RISC-V RV32IMC native code emitter.Alessandro Gatti
2024-03-19py/emitnative: Implement viper unary ops positive, negative and invert.Damien George
2024-03-07all: Remove the "STATIC" macro and just use "static" instead.Angus Gratton
2024-02-20py/emitnative: Simplify layout and loading of native function prelude.Damien George
2024-02-16py/emitglue: Introduce mp_proto_fun_t as a more general mp_raw_code_t.Damien George
2023-09-29py: Change ifdef DEBUG_PRINT to if DEBUG_PRINT.Ihor Nehrutsa
2023-04-27all: Fix spelling mistakes based on codespell check.Damien George
2023-02-27py/emitnative: Explicitly compare comparison ops in binary_op emitter.Pepijn de Vos
2022-12-16py/emitnative: Initialise locals as Python object type for native code.Damien George
2022-11-11py/emitnative: Ensure load_subscr does not clobber existing REG_ARG_2.Damien George
2022-07-12py/emitnative: Fix STORE_ATTR viper code-gen when value is not a pyobj.Jim Mussared
2022-06-20py/emit: Suppress unreachable bytecode/native code that follows jump.Damien George
2022-06-20py/emit: Remove logic to detect last-emit-was-return-value.Damien George
2022-05-23py/asmthumb: Make ARMv7-M instruction use dynamically selectable.Damien George
2022-05-23py/emitnative: Access qstr values using indirection table qstr_table.Damien George
2022-05-19py/emitnative: Provide dedicated local for exception unwind handler ptr.Damien George
2022-05-19py/emitnative: Simplify generation of code that loads prelude pointer.Damien George
2022-05-18py/compile: De-duplicate constant objects in module's constant table.Damien George
2022-05-17py/emitnative: Put a pointer to the native prelude in child_table array.Damien George
2022-05-17py/bc: Provide separate code-state setup funcs for bytecode and native.Damien George
2022-04-14Revert "py/emitnative: Don't store prelude at end of machine code if..."Damien George
2022-03-31py/runtime: Allow multiple **args in a function call.David Lechner
2022-03-30py/emitnative: Don't store prelude at end of machine code if not needed.Damien George
2022-03-28py: Change jump opcodes to emit 1-byte jump offset when possible.Damien George
2022-02-24py: Rework bytecode and .mpy file format to be mostly static data.Damien George
2021-09-13py/emitnative: Ensure load_subscr does not clobber existing REG_RET.Damien George
2021-07-19py/emitnative: Ensure stack settling is safe mid-branch.Jim Mussared
2021-07-19py/emitnative: Reuse need_reg_all func in need_stack_settled.Damien George
2021-05-20py/emitnative: Fix x86-64 emitter to generate correct 8/16-bit stores.Damien George
2021-01-29py/emitnative: Support binary ops on ARMv6M without use of ite instr.graham sanderson
2021-01-29py/emitnative: Ensure encoding to load prelude_offset doesn't change sz.Damien George
2020-06-27py/emitnative: Implement binary operations for viper uint operands.Damien George
2020-04-05all: Use MP_ERROR_TEXT for all error messages.Jim Mussared
2020-02-28all: Reformat C and Python source code with tools/codeformat.py.Damien George
2020-02-28py: Removing dangling "else" to improve code format consistency.Damien George
2020-01-27py/emitnative: Stop after finding an unwind target.Jim Mussared
2020-01-27py/emitnative: Use NULL for pending exception (not None).Jim Mussared
2019-12-12py/nativeglue: Add new header file with native function table typedef.Damien George
2019-11-07py/emitnative: Fix typo, REG_PARENT_ARG_RET should be REG_PARENT_RET.Thea Flowers
2019-10-05py: Add new Xtensa-Windowed arch for native emitter.Damien George
2019-10-05py/emitnative: Add support for archs that cannot read executable data.Damien George
2019-10-05py/emitnative: Add support for using setjmp with native emitter.Damien George
2019-10-05py/emitnative: Add support for archs with windowed registers.Damien George
2019-10-01py: Rework and compress second part of bytecode prelude.Damien George