ZJIT: Profile opt_succ and inline Integer#succ for Fixnum (#14846)
This is only really called a lot in the benchmark harness, as far as I can tell.
ZJIT: Inline String#getbyte (#14842)
Use explicit memory orders in concurrent_set
The atomic load/store operations here should mostly be using release/acquire semantics. This may lead to better performance than what we had under the default seq_cst.
On x86 this may make the atomic store of hash faster, as it can avoid...
Use BUILTIN_TYPE in gc_mark_check_t_none
Fix assert_equal order in test_namespace.rb
The expected value is the first parameter and the actual value is the second in assert_equal.
ZJIT: Rewrite arm64_split_with_scratch_reg for clarity
ZJIT: Use rb_gc_disable() over rb_gc_disable_no_rest()
no_rest() trips an assert inside the GC when we allocate with the GC disabled this way:
(gc_continue) ../src/gc/default/default.c:2029 (newobj_cache_miss+0x128) [0x105040048] ../src/gc/default/default.c:2370...
[ruby/prism] explicitly cast constants in initializers as well
https://github.com/ruby/prism/commit/e7db2b06ab
[ruby/prism] explicitly cast shifted constant to unsigned to avoid undefined behavior
https://github.com/ruby/prism/commit/0b2710a6c9
ZJIT: Add HashAref to HIR and inline Hash#[] to HashAref (#14838)
Fixes https://github.com/Shopify/ruby/issues/793
liquid-render
***ZJIT: Printing ZJIT statistics on exit*** Top-20 not inlined C methods (96.8% of total 20,222,783):...
View all revisions | View revisions
Also available in: Atom