General

Profile

tekknolagi (Maxwell Bernstein)

Issues

open closed Total
Assigned issues 4 41 45
Reported issues 0 2 2

Projects

Project Roles Registered on
Ruby Committer 06/06/2025

Activity

03/21/2026

12:11 AM Ruby Revision e69e6333 (git): ZJIT: Clean up getivar specialization code (#16475)
Add reusable helpers for getting fields, making C calls, etc. De-indent a bunch of stuff. tekknolagi (Maxwell Bernstein)

03/20/2026

11:35 PM Ruby Revision f55d9e19 (git): ZJIT: Add codegen for ArrayMax (#16411)
Implements codegen for `ArrayMax` (opt_newarray_max) by calling the `rb_vm_opt_newarray_max` VM helper, following the same pattern as `ArrayHash` and `ArrayInclude`. tekknolagi (Maxwell Bernstein)
08:38 PM Ruby Revision 88363342 (git): ZJIT: Halve metadata memory usage (#16414)
* Use sparse sorted Vec for IseqProfile instead of dense pre-allocated Vecs
Replace the two dense Vec fields (opnd_types and num_profiles) that were
pre-allocated to iseq_size for every ISEQ with a single sorted
Vec<(u32, ProfileEntry)>...
tekknolagi (Maxwell Bernstein)

03/19/2026

06:50 PM Ruby Revision 8a579ae1 (git): ZJIT: Clean up run_pass with macro identifier matching (#16459)
Thanks, Alan. tekknolagi (Maxwell Bernstein)

03/10/2026

07:53 PM Ruby Revision 3fa74bff (git): ZJIT: Only emit IncrCounter instructions in stats mode (#16330)
* ZJIT: Only emit IncrCounter instructions in stats mode
This cleans up a lot of HIR output when we're not explicitly measuring
counters. They don't generate code when not in stats mode so they are
just HIR clutter.
* ZJIT: Enable stat...
tekknolagi (Maxwell Bernstein)

03/06/2026

05:33 PM Ruby Revision 980bc396 (git): ZJIT: Count LoadField and StoreField executions (#16318)
## Runtime Counters on lobsters (before/after Jacob's load-store opt)
| Stat | Before | After | Delta |
|------|--------|-------|-------|
| load_field_count | 110,410,542 | 106,547,275 | -3,863,267 (-3.5%) |
| store_field_count | 9,196,...
tekknolagi (Maxwell Bernstein)

03/04/2026

09:18 PM Ruby Revision 6ea811e6 (git): ZJIT: Add for_each_operand methods to Insn (#16305)
- Add `for_each_operand`, `for_each_operand_mut`, and `try_for_each_operand` methods to `Insn`, backed by a shared `for_each_operand_impl!` macro
- Replace the old `worklist_traverse_single_insn` function on `Function` with direct use of...
tekknolagi (Maxwell Bernstein)

03/03/2026

11:01 PM Ruby Revision f9c51ac5 (git): ZJIT: Fix Class type system bug and constant-fold IsA (#15268)
Fix a some bugs in the type lattice around classes and user-defined classes. Refine types more precisely to subclasses of object.
With that fix, add const-folding support for IsA.
Co-authored-by: John Hawthorn <john.hawthorn@shopify.co...
tekknolagi (Maxwell Bernstein)

03/02/2026

09:58 PM Ruby Revision 993c7a27 (git): ZJIT: Don't use find() in clean_cfg (#16284)
We don't need to materialize an instruction or even look at its
operands.
tekknolagi (Maxwell Bernstein)
09:35 PM Ruby Revision 2ccb44c1 (git): ZJIT: Don't use find() in infer_types (#16283)
No need to materialize the whole instruction; if/when we need the
operands, do the union-find lookup per operand. This saves on allocation
time.
tekknolagi (Maxwell Bernstein)

Also available in: Atom