aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* asm: remove wildcard use stmtJohannes Stoelp9 days1-4/+4
|
* bf: add runtime check for data ptr over/underflowJohannes Stoelp9 days1-1/+7
| | | | | Fix bug to properly save callee-saved registers on jit entry and restore registers on jit exit.
* asm: remove EncodeMI helperJohannes Stoelp10 days1-28/+4
| | | | | * EncodeMI and EncodeM are identical after introducing explicitly sized memory operands
* mem: make all memory operands explicit in sizeJohannes Stoelp10 days10-215/+268
| | | | | | | | | * remove non size explicit MemOp * introduce private Mem trait * implement Mem8, Mem16, Mem32 and Mem64 operands * implement EncodeX helpers based on explicit memory operands * fixup instructions with explicit memory operands * fixup examples
* asm: add sub insn, add imm8Johannes Stoelp11 days3-5/+32
|
* insn: add missing trait rustdocsJohannes Stoelp2024-12-081-0/+2
|
* bf: add jit compiler and interpreterJohannes Stoelp2024-12-071-1/+7
|
* asm: add initial support for memory operand only instructionsJohannes Stoelp2024-12-074-4/+174
| | | | * add dec, inc instruction for with memory operand
* asm: add inc, xor insn and initial support for memory base+idxJohannes Stoelp2024-12-066-18/+115
|
* asm: add cmovnz/cmovz instructionsJohannes Stoelp2024-03-183-0/+32
|
* asm: preparation for cmovnz/cmovzJohannes Stoelp2024-03-184-10/+11
|
* rt: add missing doc for with_profileJohannes Stoelp2024-02-281-0/+9
|
* rt: add perf static jit profile supportJohannes Stoelp2024-02-281-2/+60
|
* asm: add push/pop insnJohannes Stoelp2023-12-133-0/+42
|
* asm: move into sub module; remove encode_riJohannes Stoelp2023-12-082-364/+346
|
* insn: update docJohannes Stoelp2023-12-073-0/+11
|
* remove preludeJohannes Stoelp2023-12-0714-26/+29
|
* insn: enhance cmp docJohannes Stoelp2023-12-071-1/+4
|
* rt: minor cleanup, update docs, add some basic testsJohannes Stoelp2023-12-071-29/+143
|
* clippy: fix some clippy lintsJohannes Stoelp2023-12-072-50/+30
|
* insn: add additional insn required for the new tiny_vm exampleJohannes Stoelp2023-12-057-1/+99
|
* rt: extend runtime to allow adding multiple code blocksJohannes Stoelp2023-12-052-21/+50
|
* Remove write permissions from runtime code buffer after copying jitted codeJohannes Stoelp2023-10-221-2/+7
|
* Added CALL and call extern fn exampleJohannes Stoelp2023-03-054-2/+16
|
* Add jmp testJohannes Stoelp2023-03-052-0/+8
|
* Updated doc commentsJohannes Stoelp2023-03-057-20/+168
|
* rename EncodeRI -> EncodeRJohannes Stoelp2023-02-281-14/+14
|
* Add JNZ and Reg32 ADD, DEC, TEST for readme exampleJohannes Stoelp2023-02-276-1/+32
|
* Add doc comments to instructionsJohannes Stoelp2023-02-271-0/+9
|
* Add minimal runtime to execute codeJohannes Stoelp2023-02-272-0/+52
|
* Add JMP, JZ, and LabelJohannes Stoelp2023-02-276-5/+147
|
* Add ADD, DEC, TEST, RET instructionsJohannes Stoelp2023-02-277-3/+67
|
* Move prelude to crate level and make publicJohannes Stoelp2023-02-274-13/+4
|
* Move instruction implementation in sub module and introduce insn preludeJohannes Stoelp2023-02-274-108/+117
|
* Add MOV testsJohannes Stoelp2023-02-272-19/+63
|
* Initial support for immediate operandsJohannes Stoelp2023-02-272-0/+119
|
* fix fmtJohannes Stoelp2023-02-261-2/+2
|
* base version capable to emit different mov insnsJohannes Stoelp2023-02-263-0/+550
Experimenting with type system to detect invalid operands during compile time.