Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | readme: add ascii logo | Johannes Stoelp | 3 days | 1 | -0/+13 |
| | |||||
* | cargo: replace nix with libc | Johannes Stoelp | 9 days | 2 | -21/+20 |
| | |||||
* | bf: compile constant into jit code, doc updates | Johannes Stoelp | 9 days | 1 | -14/+21 |
| | |||||
* | asm: remove wildcard use stmt | Johannes Stoelp | 9 days | 1 | -4/+4 |
| | |||||
* | bf: add runtime check for data ptr over/underflow | Johannes Stoelp | 9 days | 2 | -15/+90 |
| | | | | | Fix bug to properly save callee-saved registers on jit entry and restore registers on jit exit. | ||||
* | fib: only use caller saved registers | Johannes Stoelp | 9 days | 1 | -1/+1 |
| | |||||
* | ci: run with debug and release in the default target | Johannes Stoelp | 9 days | 1 | -10/+18 |
| | |||||
* | bf: update upper bound check | Johannes Stoelp | 9 days | 1 | -6/+2 |
| | |||||
* | asm: remove EncodeMI helper | Johannes Stoelp | 10 days | 1 | -28/+4 |
| | | | | | * EncodeMI and EncodeM are identical after introducing explicitly sized memory operands | ||||
* | mem: make all memory operands explicit in size | Johannes Stoelp | 10 days | 13 | -259/+319 |
| | | | | | | | | | * 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 | ||||
* | bf: add fun optimization to fold +- insns | Johannes Stoelp | 11 days | 1 | -4/+44 |
| | |||||
* | asm: add sub insn, add imm8 | Johannes Stoelp | 11 days | 3 | -5/+32 |
| | |||||
* | bf: align comment on 80 cols | Johannes Stoelp | 11 days | 1 | -22/+25 |
| | |||||
* | insn: add missing trait rustdocs | Johannes Stoelp | 2024-12-08 | 1 | -0/+2 |
| | |||||
* | readme: fix typo | Johannes Stoelp | 2024-12-08 | 1 | -1/+1 |
| | |||||
* | bf: rename file and add to ci | Johannes Stoelp | 2024-12-08 | 3 | -1/+2 |
| | |||||
* | fixup markdown links | Johannes Stoelp | 2024-12-07 | 2 | -2/+2 |
| | |||||
* | bf: add jit compiler and interpreter | Johannes Stoelp | 2024-12-07 | 3 | -1/+302 |
| | |||||
* | asm: add initial support for memory operand only instructions | Johannes Stoelp | 2024-12-07 | 4 | -4/+174 |
| | | | | * add dec, inc instruction for with memory operand | ||||
* | asm: add inc, xor insn and initial support for memory base+idx | Johannes Stoelp | 2024-12-06 | 6 | -18/+115 |
| | |||||
* | tiny_vm: replace control flow insns with cmovz insn | Johannes Stoelp | 2024-03-18 | 1 | -7/+7 |
| | |||||
* | asm: add cmovnz/cmovz instructions | Johannes Stoelp | 2024-03-18 | 3 | -0/+32 |
| | |||||
* | asm: preparation for cmovnz/cmovz | Johannes Stoelp | 2024-03-18 | 4 | -10/+11 |
| | |||||
* | rt: add missing doc for with_profile | Johannes Stoelp | 2024-02-28 | 1 | -0/+9 |
| | |||||
* | readme: update description of examples | Johannes Stoelp | 2024-02-28 | 1 | -3/+9 |
| | |||||
* | tiny_vm: remove additional cache lookup after translating a new bb | Johannes Stoelp | 2024-02-28 | 1 | -12/+17 |
| | |||||
* | tiny_vm: add commented out rt with profiling + symbols in release build | Johannes Stoelp | 2024-02-28 | 2 | -0/+6 |
| | |||||
* | rt: add perf static jit profile support | Johannes Stoelp | 2024-02-28 | 1 | -2/+60 |
| | |||||
* | tiny_vm: fix typos in doc comment | Johannes Stoelp | 2023-12-20 | 1 | -3/+3 |
| | |||||
* | ci: add check to run example in readme | Johannes Stoelp | 2023-12-13 | 1 | -1/+6 |
| | |||||
* | asm: add push/pop insn | Johannes Stoelp | 2023-12-13 | 3 | -0/+42 |
| | |||||
* | tiny_vm: move cfg to jit compile function and enahce jit abi comment | Johannes Stoelp | 2023-12-08 | 1 | -6/+6 |
| | |||||
* | readme: fix link; split code in two lines | Johannes Stoelp | 2023-12-08 | 1 | -2/+3 |
| | |||||
* | ci: fix gh action; add run examples | Johannes Stoelp | 2023-12-08 | 2 | -2/+11 |
| | |||||
* | ci: introduce Makefile | Johannes Stoelp | 2023-12-08 | 3 | -5/+35 |
| | | | | | | | Add CI checks into ci/Makefile and update gh actions. Motivation is, that makefile can also be added as pre-commit hook for local development: > echo 'make -C ci' > .git/hooks/pre-commit; chmod +x .git/hooks/pre-commit | ||||
* | asm: move into sub module; remove encode_ri | Johannes Stoelp | 2023-12-08 | 2 | -364/+346 |
| | |||||
* | insn: update doc | Johannes Stoelp | 2023-12-07 | 3 | -0/+11 |
| | |||||
* | remove prelude | Johannes Stoelp | 2023-12-07 | 20 | -35/+43 |
| | |||||
* | insn: enhance cmp doc | Johannes Stoelp | 2023-12-07 | 1 | -1/+4 |
| | |||||
* | rt: minor cleanup, update docs, add some basic tests | Johannes Stoelp | 2023-12-07 | 1 | -29/+143 |
| | |||||
* | clippy: fix some clippy lints | Johannes Stoelp | 2023-12-07 | 3 | -52/+32 |
| | |||||
* | fix typo | Johannes Stoelp | 2023-12-05 | 1 | -1/+1 |
| | |||||
* | update readme to describe examples | Johannes Stoelp | 2023-12-05 | 1 | -0/+6 |
| | |||||
* | examples: add new example demonstrating a simple VM with a jit compiler | Johannes Stoelp | 2023-12-05 | 1 | -0/+697 |
| | |||||
* | examples: add doc to existing examples | Johannes Stoelp | 2023-12-05 | 2 | -0/+13 |
| | |||||
* | [ci]: run tests in example and generate doc for examples | Johannes Stoelp | 2023-12-05 | 2 | -1/+4 |
| | |||||
* | insn: add additional insn required for the new tiny_vm example | Johannes Stoelp | 2023-12-05 | 7 | -1/+99 |
| | |||||
* | rt: extend runtime to allow adding multiple code blocks | Johannes Stoelp | 2023-12-05 | 4 | -25/+54 |
| | |||||
* | Remove write permissions from runtime code buffer after copying jitted code | Johannes Stoelp | 2023-10-22 | 1 | -2/+7 |
| | |||||
* | Fix comment in README | Johannes Stoelp | 2023-10-22 | 1 | -1/+1 |
| |