| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2021-10-20 | Add sign-extended mode for test() instruction | Maxime Chevalier-Boisvert | |
| 2021-10-20 | Implemented opt_lt. Prelude to branch instructions. | Maxime Chevalier-Boisvert | |
| 2021-10-20 | Start implementing BBV primitives | Maxime Chevalier-Boisvert | |
| 2021-10-20 | Start refactoring JIT engine | Maxime Chevalier-Boisvert | |
| 2021-10-20 | Move code into ujit_iface.c | Maxime Chevalier-Boisvert | |
| 2021-10-20 | Refactor uJIT code into more files for readability | Maxime Chevalier-Boisvert | |
| 2021-10-20 | Implemented opt_plus in MicroJIT | Maxime Chevalier-Boisvert | |
| 2021-10-20 | Rename function and variable | Maxime Chevalier-Boisvert | |
| 2021-10-20 | MicroJIT: coalesce heap pointer check on self | Alan Wu | |
| 2021-10-20 | Implemented setinstancevariable | Maxime Chevalier-Boisvert | |
| 2021-10-20 | Add comment wrt getivar and allocators | Maxime Chevalier-Boisvert | |
| 2021-10-20 | Remove T_OBJECT runtime check | Aaron Patterson | |
| If the cached class uses the default allocator, then all instances coming from the class should be T_OBJECT instances. Meaning we can just check the allocator function at compile time, then skip the runtime T_OBJECT check | |||
| 2021-10-20 | Basic implementation of getivar for MicroJIT | Maxime Chevalier-Boisvert | |
| 2021-10-20 | Deoptimize on side-exit | Maxime Chevalier-Boisvert | |
| 2021-10-20 | Rename variables for clarity | Maxime Chevalier-Boisvert | |
| 2021-10-20 | Fix typo | Alan Wu | |
| 2021-10-20 | Print to stderr in ujit_utils.c | Maxime Chevalier-Boisvert | |
| 2021-10-20 | MicroJIT: Count number of compiled instructions better | Alan Wu | |
| 2021-10-20 | Fix warning | Maxime Chevalier-Boisvert | |
| 2021-10-20 | Make a bunch of functions compilation unit local | Alan Wu | |
| 2021-10-20 | Include disassembly in MicroJIT scraper output | Alan Wu | |
| 2021-10-20 | MicroJIT: avoid having to invalidate running output code | Alan Wu | |
| 2021-10-20 | Update comment for `ujit_compile_insn` | Alan Wu | |
| 2021-10-20 | MicroJIT: generate less code for CFUNCs | Alan Wu | |
| Added UJIT_CHECK_MODE. Set to 1 to double check method dispatch in generated code. It's surprising to me that we need to watch both cc and cme. There might be opportunities to simplify there. | |||
| 2021-10-20 | Don't create a stack frame for Hash#key? | Maxime Chevalier-Boisvert | |
| 2021-10-20 | Fix GCC warning | Maxime Chevalier-Boisvert | |
| 2021-10-20 | Added stack overflow check to MicroJIT CFUNC calls | Maxime Chevalier-Boisvert | |
| 2021-10-20 | Added RUBY_VM_CHECK_INTS to CFUNC calls | Maxime Chevalier-Boisvert | |
| 2021-10-20 | Fix compiler warnings | Maxime Chevalier-Boisvert | |
| 2021-10-20 | Implemented mechanism for rel32 call | Maxime Chevalier-Boisvert | |
| 2021-10-20 | Move MicroJIT compilation threshold into MicroJIT's header | Alan Wu | |
| 2021-10-20 | Fixed two CFUNC call bugs thanks to Alan & Aaron! | Maxime Chevalier-Boisvert | |
| 2021-10-20 | MicroJIT: Read pointer to call cache from call data | Alan Wu | |
| The call cache changes when the call site becomes polymophic and can result in the generated code falsely assuming cd->cc->cme is not NULL. Here is a crasher: def body(thing) thing.strip end str = "" 10.times { body(str) } body(0) rescue p 'not found' body(str) | |||
| 2021-10-20 | Fix MicroJIT argument copying for CFUNC calls | Maxime Chevalier-Boisvert | |
| 2021-10-20 | Fixed two issues with MicroJIT CFUNC calls | Maxime Chevalier-Boisvert | |
| 2021-10-20 | First pass at CFUNC calls complete. Not yet functional. | Maxime Chevalier-Boisvert | |
| 2021-10-20 | Refactor ujit, define named register constants, code cleanup | Maxime Chevalier-Boisvert | |
| 2021-10-20 | MicroJIT: switch to example that passes ec as second argument | Alan Wu | |
| opt_send_without_block needs it. Ideally we would use this example only when an instruction in the compiled sequence needs `ec`. We can worry about that later. | |||
| 2021-10-20 | MicroJIT: Use R9 in generated code for Ruby stack pointer | Alan Wu | |
| 2021-10-20 | Add to the MicroJIT scraper an example that passes ec | Alan Wu | |
| 2021-10-20 | Commit before merge. | Maxime Chevalier-Boisvert | |
| 2021-10-20 | Updated C function call sketch | Maxime Chevalier-Boisvert | |
| 2021-10-20 | Remove comment. Commit before rebase. | Maxime Chevalier-Boisvert | |
| 2021-10-20 | Fix MicroJIT logic in MJIT exec | Alan Wu | |
| 2021-10-20 | Never compile with MicroJIT when MJIT is enabled | Alan Wu | |
| There is a crash in there that we don't want to worry about for now. | |||
| 2021-10-20 | Declare extern with RUBY_EXTERN for MJIT | Alan Wu | |
| 2021-10-20 | Update dependencies | Alan Wu | |
| 2021-10-20 | MicroJIT: Don't compile trace instructions | Alan Wu | |
| 2021-10-20 | Don't call MicroJIT from MJIT output | Alan Wu | |
| 2021-10-20 | Export MicroJIT global used in MJIT | Alan Wu | |
