ruby--ruby/yjit/src
Alan Wu 5d95cd99f4 YJIT: Reset dropped_bytes when patching code
We switch to a new page when we detect dropped_bytes flipping from false
to true. Previously, when we patch code for invalidation during code gc,
we start with the flag being set to true, so we failed to apply patches
that straddle pages. We would write out jumps half way and then stop,
which left the code corrupted.

Reset the flag before patching so we patch across pages properly.
2022-11-08 16:09:02 -05:00
..
asm YJIT: Reset dropped_bytes when patching code 2022-11-08 16:09:02 -05:00
backend YJIT: Stop incrementing write_pos if cb.has_dropped_bytes (#6664) 2022-11-03 11:42:28 -04:00
codegen.rs Implement optimize call (#6691) 2022-11-08 15:28:28 -05:00
core.rs YJIT: Reset dropped_bytes when patching code 2022-11-08 16:09:02 -05:00
cruby.rs YJIT: Support invokeblock (#6640) 2022-11-02 12:30:48 -04:00
cruby_bindings.inc.rs Implement optimize call (#6691) 2022-11-08 15:28:28 -05:00
disasm.rs YJIT: Respect writable_addrs on --yjit-dump-iseq-disasm as well (#6596) 2022-10-19 20:47:11 -04:00
invariants.rs YJIT: Reset dropped_bytes when patching code 2022-11-08 16:09:02 -05:00
lib.rs Fixes remaining issues and turns back on dead code and unused (#6584) 2022-10-18 16:03:55 -04:00
options.rs YJIT: reduce default `--yjit-exec-mem-size` to 128MiB instead of 256 (#6649) 2022-10-31 14:29:11 -04:00
stats.rs Implement optimize call (#6691) 2022-11-08 15:28:28 -05:00
utils.rs YJIT: Interleave inline and outlined code blocks (#6460) 2022-10-17 10:45:59 -07:00
virtualmem.rs YJIT: GC and recompile all code pages (#6406) 2022-10-25 09:07:10 -07:00
yjit.rs YJIT: Add RubyVM::YJIT.code_gc (#6644) 2022-10-31 14:29:45 -04:00