summaryrefslogtreecommitdiff
path: root/ujit_codegen.c
Commit message (Expand)AuthorAgeFilesLines
* Yet Another Ruby JIT!Jose Narvaez2021-10-201-1792/+0
* Machinery to implement deferred compilationMaxime Chevalier-Boisvert2021-10-201-27/+20
* YJIT: fix leak, remove unused field on block_tAlan Wu2021-10-201-2/+0
* WIP refactor block lists to use darrayMaxime Chevalier-Boisvert2021-10-201-1/+18
* uJIT: support 64 bit operands for TEST. Use it to check for zeroAlan Wu2021-10-201-2/+2
* uJIT: Add exit counters for leave and refactor stats printout codeAlan Wu2021-10-201-3/+3
* uJIT: add guards for protected opt_send_without_block callsAlan Wu2021-10-201-7/+28
* At jit_at_current_insn, jit_peek_at_stack functionsMaxime Chevalier-Boisvert2021-10-201-0/+41
* Runtime counters for bailing from opt_send_without_blockAlan Wu2021-10-201-56/+125
* Update ec->cfp->pc when hitting a stub.Maxime Chevalier-Boisvert2021-10-201-14/+13
* Thread EC through jit state. Add codegen status enum.Maxime Chevalier-Boisvert2021-10-201-162/+139
* Fix jmp encoding. Rename conditional jumps jxx() to jxx_label()Maxime Chevalier-Boisvert2021-10-201-1/+1
* uJIT: Implement opt_getinlinecacheAlan Wu2021-10-201-4/+53
* Implement support for variadic C functionsMaxime Chevalier-Boisvert2021-10-201-8/+27
* Added ujit_save_regs() and ujit_load_regs() helper functionsMaxime Chevalier-Boisvert2021-10-201-40/+32
* Use darray for incoming branchesMaxime Chevalier-Boisvert2021-10-201-4/+4
* Mark and update object references in generated codeAlan Wu2021-10-201-8/+24
* Check for ::Array, not T_ARRAY in opt_arefAlan Wu2021-10-201-6/+7
* Fix opt_aref SNAFUMaxime Chevalier-Boisvert2021-10-201-12/+12
* Ujit bug fixesAlan Wu2021-10-201-0/+10
* Fix build on MSVCAlan Wu2021-10-201-1/+2
* fix: ujit getinstancevariable code checks ivar extended table sizeMike Dalessio2021-10-201-0/+9
* Add op-not-redefined check to opt_arefMaxime Chevalier-Boisvert2021-10-201-0/+10
* Add missing VM_CHECK_INTS() for correctnessMaxime Chevalier-Boisvert2021-10-201-33/+31
* Add jit_print_loc() for debugging, based on Alan Wu's snippetMaxime Chevalier-Boisvert2021-10-201-0/+11
* Fix bug in putobject found by @tenderloveMaxime Chevalier-Boisvert2021-10-201-1/+13
* Optimize gen_dupMaxime Chevalier-Boisvert2021-10-201-4/+7
* Remove superfluous instruction in opt_send_without_blockMaxime Chevalier-Boisvert2021-10-201-44/+8
* Fix jit_return bug, return address on wrong frameMaxime Chevalier-Boisvert2021-10-201-24/+48
* Fix REG_SP writeback bug in gen_exitMaxime Chevalier-Boisvert2021-10-201-1/+1
* Fix context push/pop in Ruby-to-Ruby callsMaxime Chevalier-Boisvert2021-10-201-1/+2
* fix: allow make to complete when DEBUG_RUBY is not setMike Dalessio2021-10-201-0/+2
* WIP JIT-to-JIT returnsMaxime Chevalier-Boisvert2021-10-201-10/+69
* Don't increment instr/exit counters if stats not requestedMaxime Chevalier-Boisvert2021-10-201-9/+11
* Fixed two bugs in JIT-to-JIT calls (thanks Alan!)Maxime Chevalier-Boisvert2021-10-201-15/+35
* Pop stack operands in opt_arefMaxime Chevalier-Boisvert2021-10-201-1/+74
* Only compile iseqs with simple parameters. Enable get_local_wc1Alan Wu2021-10-201-3/+11
* Commit WIP setlocal_WC_1 implementationMaxime Chevalier-Boisvert2021-10-201-3/+31
* Implement opt_le, opt_ge in ujitMaxime Chevalier-Boisvert2021-10-201-3/+26
* Fix overflow check in ujitMaxime Chevalier-Boisvert2021-10-201-3/+2
* Implement Ruby-to-Ruby calls in ujit (opt_send_without_block)Maxime Chevalier-Boisvert2021-10-201-43/+185
* Implement opt_and in ujitMaxime Chevalier-Boisvert2021-10-201-0/+45
* Restore interpreter regs in ujit hook. Implement leave bytecode.Maxime Chevalier-Boisvert2021-10-201-1/+43
* Tally instructions when taking side exists for --ujit-statsAlan Wu2021-10-201-0/+5
* Reduce size of ctx_tMaxime Chevalier-Boisvert2021-10-201-3/+3
* Report unknown --ujit-* optionsMaxime Chevalier-Boisvert2021-10-201-0/+1
* Implement --ujit-stats and instructoin countingAlan Wu2021-10-201-0/+5
* Set T_FIXNUM type tags in opt_plus, opt_minusMaxime Chevalier-Boisvert2021-10-201-2/+2
* Optimize putobject codegenMaxime Chevalier-Boisvert2021-10-201-8/+24
* Eliminate type checks in opt_ltMaxime Chevalier-Boisvert2021-10-201-4/+10