General

Profile

k0kubun (Takashi Kokubun)

Issues

open closed Total
Assigned issues 4 113 117
Reported issues 1 78 79

Projects

Project Roles Registered on
Ruby Committer, Release Manager 05/15/2017

Activity

Today

04:55 PM Ruby Revision 079ee4ba (git): Fix rand 0.10.0 compatibility in ZJIT parcopy tests
rand 0.10.0 moved `random_range` from the `Rng` trait to `RngExt`.
Update the import accordingly.
k0kubun (Takashi Kokubun)
04:55 PM Ruby Revision c8976131 (git): cargo update --manifest-path zjit/Cargo.toml
k0kubun (Takashi Kokubun)
04:55 PM Ruby Revision 1cbb161e (git): Decrease the frequency of cargo updates
They're development-only dependencies. We shouldn't need to pay the
maintenance cost for such frequent updates, especially when the
dependabot PRs have failed the CI two times in a row.
k0kubun (Takashi Kokubun)
04:28 PM Ruby Revision 33b9d2ab (git): ZJIT: Skip TestOpenURI and TestOpenURISSL (#16603)
k0kubun (Takashi Kokubun)

03/27/2026

11:26 PM Ruby Revision bfcc31ab (git): ZJIT: Define JITFrame struct in C and import via bindgen
Make zjit.h the single source of truth for the JITFrame struct layout.
Remove the manual #[repr(C)] definition from jit_frame.rs and replace
it with a type alias to the bindgen-generated zjit_jit_frame.
k0kubun (Takashi Kokubun)
11:26 PM Ruby Revision 4e5b0d31 (git): ZJIT: Have JITFrame relocate itself via Rust function
Expose rb_zjit_jit_frame_update_references so vm.c can call into Rust
to relocate the iseq pointer during GC compaction, instead of manually
manipulating JITFrame fields in C. This keeps JITFrame field access
consolidated in Rust.
k0kubun (Takashi Kokubun)
11:26 PM Ruby Revision 226f3705 (git): Rename cfp->iseq to cfp->_iseq and rb_zjit_cfp_iseq to rb_cfp_iseq
Per tenderlove's review, every cfp->iseq read should go through an
accessor that accounts for JITFrame. Rename the field to _iseq so
direct access causes a compile error, and rename the accessors to
drop the zjit prefix (rb_cfp_iseq, rb_...
k0kubun (Takashi Kokubun)
11:26 PM Ruby Revision 4391c5f0 (git): Use cfp->_iseq directly in GET_ISEQ() macro
The interpreter always has a valid _iseq field (it's written on exit
from JIT code), so GET_ISEQ() doesn't need to go through rb_cfp_iseq().
Code in vm_insnhelper.c that may be called as a ZJIT fallback should
use rb_cfp_iseq() instead.
k0kubun (Takashi Kokubun)
11:26 PM Ruby Revision ee60b99b (git): Rename rb_cfp_iseq to CFP_ISEQ and rb_cfp_pc to CFP_PC
Rename for consistency with ISEQ_BODY naming convention. Remove the
separate rb_cfp_has_iseq/rb_cfp_has_pc wrappers — CFP_ISEQ and CFP_PC
return NULL for missing values, which works directly in if conditions.
k0kubun (Takashi Kokubun)
11:26 PM Ruby Revision 634707a7 (git): Rename CFP_HAS_JIT_RETURN to CFP_JIT_RETURN
Return the pointer directly instead of a bool, for consistency with
CFP_ISEQ and CFP_PC. The pointer is truthy in if conditions so all
callers work unchanged.
k0kubun (Takashi Kokubun)

Also available in: Atom