@@ -468,31 +468,31 @@ The following bundled gems are promoted from default gems.
468
468
# ### New features
469
469
470
470
* Command - line options
471
- * ` --yjit-mem-size` introduces a unified memory limit (default 128MiB) to track total YJIT memory usage,
472
- providing a more intuitive alternative to the old ` --yjit-exec-mem-size` option.
473
- * ` --yjit-trace-exits=COUNTER` allows tracing of counted exits and fallbacks.
474
- * ` --yjit-perf=codegen` allows profiling of JIT code based on YJIT ' s codegen functions.
475
- * `--yjit-log` enables a compilation log to track what gets compiled.
471
+ * ` --yjit-mem-size` introduces a unified memory limit (default 128MiB) to track total YJIT memory usage,
472
+ providing a more intuitive alternative to the old ` --yjit-exec-mem-size` option.
473
+ * ` --yjit-trace-exits=COUNTER` allows tracing of counted exits and fallbacks.
474
+ * ` --yjit-perf=codegen` allows profiling of JIT code based on YJIT ' s codegen functions.
475
+ * `--yjit-log` enables a compilation log to track what gets compiled.
476
476
* Ruby API
477
- * `RubyVM::YJIT.enable(log: true)` also enables a compilation log.
478
- * `RubyVM::YJIT.log` provides access to the tail of the compilation log at run-time.
477
+ * `RubyVM::YJIT.enable(log: true)` also enables a compilation log.
478
+ * `RubyVM::YJIT.log` provides access to the tail of the compilation log at run-time.
479
479
* YJIT stats
480
- * `RubyVM::YJIT.runtime_stats` now always provides additional statistics on
481
- invalidation, inlining, and metadata encoding.
482
- * `RubyVM::YJIT.runtime_stats[:iseq_calls]` is added to profile non-inlined Ruby method calls.
483
- * `RubyVM::YJIT.runtime_stats[:cfunc_calls]` is truncated to the top 20 entries for better performance.
480
+ * `RubyVM::YJIT.runtime_stats` now always provides additional statistics on
481
+ invalidation, inlining, and metadata encoding.
482
+ * `RubyVM::YJIT.runtime_stats[:iseq_calls]` is added to profile non-inlined Ruby method calls.
483
+ * `RubyVM::YJIT.runtime_stats[:cfunc_calls]` is truncated to the top 20 entries for better performance.
484
484
485
485
#### New optimizations
486
486
487
487
* Compressed context reduces memory needed to store YJIT metadata
488
488
* Allocate registers for local variables and Ruby method arguments
489
489
* When YJIT is enabled, use more Core primitives written in Ruby:
490
- * `Array#each`, `Array#select`, `Array#map` rewritten in Ruby for better performance [[Feature #20182]].
490
+ * `Array#each`, `Array#select`, `Array#map` rewritten in Ruby for better performance [[Feature #20182]].
491
491
* Ability to inline small/trivial methods such as:
492
- * Empty methods
493
- * Methods returning a constant
494
- * Methods returning `self`
495
- * Methods directly returning an argument
492
+ * Empty methods
493
+ * Methods returning a constant
494
+ * Methods returning `self`
495
+ * Methods directly returning an argument
496
496
* Specialized codegen for many more runtime methods
497
497
* Optimize `String#getbyte`, `String#setbyte` and other string methods
498
498
* Optimize bitwise operations to speed up low-level bit/byte manipulation
0 commit comments