Ruby Core Updates: ZJIT Compilation Improvements and Bug Fixes

Ruby's development team merged 14 pull requests on March 24th, 2026, with significant focus on ZJIT compiler enhancements and several core bug fixes. The updates include new instruction compilation support, polymorphic optimizations, and fixes for Data#initialize and marshal string handling.

Duration: PT2M9S

Episode overview

This episode is a short developer briefing from Ruby Core Updates.

It explains recent repository work in plain language.

  • Show: Ruby Core Updates
  • Published: 2026-03-24T10:32:20Z
  • Audio duration: PT2M9S

Transcript excerpt

This excerpt keeps the crawler page concise. Listen to the episode or use the RSS feed for the full update.

Good morning, this is Ruby Core Updates for March 24th, 2026.

The Ruby team had a productive day with 14 merged pull requests and 24 additional commits, heavily focused on ZJIT compiler improvements.

Nozomi Hijikata merged support for compiling the checkmatch instruction in ZJIT, increasing the compilation ratio from 82.6% to 82.8% on the lobsters benchmark. This addresses one of the top unhandled YARV instructions.

Aaron Patterson merged two significant ZJIT optimizations: support for nil block parameters, which dramatically improved ActiveRecord benchmark performance by reducing unoptimized parameter features from over 2 million to under 200,000, and a fix to only load non-virtual register operands, eliminating unnecessary…

Max Bernstein added polymorphic getivar support to ZJIT, enabling polymorphic branching code for instance variable access across multiple object shapes. The team also resolved duplicate symbol issues in ZJIT test linking.

Takashi Kokubun enhanced ZJIT's performance analysis capabilities by adding HIR instruction symbol dumping for perf profiling with the --zjit-perf=hir flag.

Nearby episodes from Ruby Core Updates

  1. ZJIT Performance Optimizations and Source Location Revert
  2. ZJIT Performance Improvements and CI Stability Fixes
  3. ZJIT Optimization and Performance Improvements
  4. ZJIT Performance Enhancements and Regexp Freezing
  5. Documentation Improvements and Bundler Restructuring
  6. Weekly Recap - JIT Optimization & Performance Enhancement
  7. ZJIT Array Access Optimization
  8. ZJIT Performance Improvements and Prism Parser Updates