summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2021-10-20Added jmp_ptr() to ujit_asm.hMaxime Chevalier-Boisvert
2021-10-20Fix mistake in ujit command line parsingAlan Wu
2021-10-20Check if outlined code block has enough space tooMaxime Chevalier-Boisvert
2021-10-20Implement the --disable-ujit command line optionAlan Wu
2021-10-20endbr64 is fineAlan Wu
2021-10-20Implemented side-exits to interpreter. setlocal_WC_0Maxime Chevalier-Boisvert
2021-10-20Start implementing setlocal_wc0Maxime Chevalier-Boisvert
2021-10-20Comment out jnl to avoid conflict with system headerAlan Wu
This is specific to Linux
2021-10-20Preliminary GNU/Linux support for code scraperAlan Wu
Let's see if this works on CI
2021-10-20Refactor ujit_examples.h generator. Remove dwarfdump dependencyAlan Wu
2021-10-20Update PC in memory when exiting jitted codeAlan Wu
Without this, the allocation tracker was inaccurate and was causing a failure in `test/objspace/test_objspace.rb`.
2021-10-20Revert "Add workaround for inserting into addr2insn mapping"Alan Wu
This reverts commit 6b765b7ca0dad82ffbdeea76c63a0cac5fdc4bfd. It made things much slower and didn't fix the crash.
2021-10-20Avoid triggering GC while translating threaded codeAlan Wu
2021-10-20Add workaround for inserting into addr2insn mappingAlan Wu
2021-10-20Added 8-bit and 16-bit general-purpose registers, more tests.Maxime Chevalier-Boisvert
2021-10-20Don't assume srcdir is cwdAlan Wu
2021-10-20Add location hint to code block mmap callMaxime Chevalier-Boisvert
2021-10-20Added method to align code block write positionMaxime Chevalier-Boisvert
2021-10-20Fixed bug with ctx_stack_pop. Implemented dup bytecode.Maxime Chevalier-Boisvert
2021-10-20Port print_int, movsx. Implement putself.Maxime Chevalier-Boisvert
2021-10-20Add function to print strings from generated codeMaxime Chevalier-Boisvert
2021-10-20Implemented delayed stack pointer adjustment optimizationMaxime Chevalier-Boisvert
2021-10-20Avoid recompiling overlapping instruction sequences in ujitMaxime Chevalier-Boisvert
2021-10-20Fix typoAlan Wu
2021-10-20Fix dependency for ujit_examples.hAlan Wu
Once this works on GNU/Linux this could be done semi automatically.
2021-10-20Compile putnilMaxime Chevalier-Boisvert
2021-10-20Chain compilation of adjacent instructionsMaxime Chevalier-Boisvert
2021-10-20Testing lea instruction properlyMaxime Chevalier-Boisvert
2021-10-20Complete refactoring to codegen functionsMaxime Chevalier-Boisvert
2021-10-20Refactor MicroJIT codegen to use hash table of codegen functionsMaxime Chevalier-Boisvert
2021-10-20Compiling getlocal_WC_0Maxime Chevalier-Boisvert
2021-10-20Ported xor and cmovcc instructionsMaxime Chevalier-Boisvert
2021-10-20Ported neg, and, or instructionsMaxime Chevalier-Boisvert
2021-10-20Remove PC argument from ujit instructionsMaxime Chevalier-Boisvert
2021-10-20Small refactorings in ujit_compile.cMaxime Chevalier-Boisvert
2021-10-20Added cmp, not. Generate code for nop instruction.Maxime Chevalier-Boisvert
2021-10-20Ported inc/dec instructionsMaxime Chevalier-Boisvert
2021-10-20Removed native_pop_code, ported call with labelMaxime Chevalier-Boisvert
2021-10-20Generate multiple copies of native code for `pop`Alan Wu
Insert generated addresses into st_table for mapping native code addresses back to info about VM instructions. Export `encoded_insn_data` to do this. Also some style fixes.
2021-10-20Ported label linking and conditional jumpsMaxime Chevalier-Boisvert
2021-10-20Add new files, ujit_compile.c, ujit_compile.hMaxime Chevalier-Boisvert
2021-10-20Added shift instructionsMaxime Chevalier-Boisvert
2021-10-20Added test for leaMaxime Chevalier-Boisvert
2021-10-20Reimplement Alan's pop instruction with the new assemblerMaxime Chevalier-Boisvert
2021-10-20Added sub instruction, 32-bit registers, more testsMaxime Chevalier-Boisvert
2021-10-20Added jmp R/M instructionMaxime Chevalier-Boisvert
2021-10-20add and mov instruction encoding ported and testedMaxime Chevalier-Boisvert
2021-10-20Progress on x86 assembler. Encode a few simple instructions.Maxime Chevalier-Boisvert
2021-10-20Started porting instruction encodingMaxime Chevalier-Boisvert
2021-10-20Progress on porting x86 assembler for MicroJITMaxime Chevalier-Boisvert