General

Profile

k0kubun (Takashi Kokubun)

Issues

open closed Total
Assigned issues 5 114 119
Reported issues 1 78 79

Projects

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

Activity

08/13/2026

02:14 AM Ruby Revision 294fa2a9 (git): ZJIT: Stop calls into code invalidated by EP escape (#18315)
When rb_zjit_invalidate_no_ep_escape() fires, it patches NoEPEscape
patch points into side exits and marks the ISEQ's latest version as
invalidated. However, that was not enough to stop calls into the
patched code:
* SendDirect callers ...
k0kubun (Takashi Kokubun)
12:36 AM Ruby Revision 465650f4 (git): ZJIT: Pass overflow invokebuiltin ccall args on the stack
k0kubun (Takashi Kokubun)
12:36 AM Ruby Revision 300e59bf (git): ZJIT: Assert cfunc argument values in a codegen test
Add a test that defines C methods with rb_define_method() whose bodies
assert_eq! the exact argument values observed by the callee. The 7-arg
method plus the receiver fills all 8 AAPCS64 argument registers on
arm64, and the 10-arg method...
k0kubun (Takashi Kokubun)
12:36 AM Ruby Revision 191701ff (git): ZJIT: Push stack arguments with CPushPair
Instead of one SP subtraction followed by plain stores, push the
outgoing stack arguments with CPushPair, from the last argument to the
first so that lower-numbered arguments end up at lower addresses. The
first operand of CPushPair is n...
k0kubun (Takashi Kokubun)
12:36 AM Ruby Revision 095236cb (git): ZJIT: Remove unused SideExitReason::TooManyArgsForLir
The only places that pushed a SideExit with this reason were the
invokebuiltin gates that the first commit removed. Drop the variant and
its exit_too_many_args_for_lir counter. SendFallbackReason has a
variant with the same name, which i...
k0kubun (Takashi Kokubun)

08/12/2026

05:13 PM Ruby Revision 00f52fca (git): ZJIT: Eliminate empty inline frame push/pop pairs (#18231)
k0kubun (Takashi Kokubun)

08/10/2026

08:05 PM Ruby Revision 118f74c8 (git): YJIT: Inline new-ivar writes into embedded objects again (#18225)
Since e0083cffa3, gen_set_ivar() has delegated every write that needs
a shape transition to a C call.
Restore the inline write + shape transition for the common subset:
an embedded T_OBJECT whose next shape keeps the same capacity. The
...
k0kubun (Takashi Kokubun)
07:11 PM Ruby Revision 617b835e (git): Bump ERB to 6.0.7 (#18282)
Merge erb-6.0.7 k0kubun (Takashi Kokubun)
05:32 PM Ruby Revision 207e1912 (git): ZJIT: Use all 8 AAPCS64 argument registers on arm64 (#18257)
ZJIT previously used only 6 of the 8 argument registers specified by
the AAPCS64 calling convention, to mirror the number of argument
registers on x86_64's SysV. Add x6 and x7 to the C argument register
constants and ALLOC_REGS, like the...
k0kubun (Takashi Kokubun)

08/07/2026

09:51 PM Ruby Revision 156e154f (git): ZJIT: Strength-reduce Fixnum % and / by power-of-two constants (#18258)
Rewrite FixnumMod with a positive power-of-two constant divisor into
FixnumAnd, and FixnumDiv into FixnumRShift. The sign of Ruby's modulo
result follows the divisor, and Integer#/ rounds the quotient towards
negative infinity, so both r...
k0kubun (Takashi Kokubun)

Also available in: Atom