General

Profile

tekknolagi (Maxwell Bernstein)

Issues

open closed Total
Assigned issues 4 35 39
Reported issues 0 2 2

Projects

Project Roles Registered on
Ruby Committer 06/06/2025

Activity

11/10/2025

03:51 PM Ruby Revision fb5f10e0 (git): ZJIT: Snapshot once per YARV insn (#15082)
This is roughly net-neutral for the number of instructions created but
at least cenetralizes where the Snapshot is made.
Previously, we might have multiple Snapshot per YARV instruction
depending on if it had event flags, if the body of...
tekknolagi (Maxwell Bernstein)

11/06/2025

08:07 PM Ruby Revision 38d31dc4 (git): ZJIT: Untag block handler (#15085)
Storing the tagged block handler in profiles is not GC-safe (nice catch,
Kokubun). Store the untagged block handler instead.
Fix bug in https://github.com/ruby/ruby/pull/15051
tekknolagi (Maxwell Bernstein)
05:40 PM Ruby Revision 1cca3efa (git): ZJIT: Use interpreter inline cache in setinstancevariable (#14925)
We have both `SetIvar` and `SetInstanceVariable`. The former is a purely
dynamic fallback that we can inline `attr_accessor`/`attr_writer` into,
whereas the latter comes straight from the interpreter's
`setinstancevariable` opcode.
tekknolagi (Maxwell Bernstein)

11/05/2025

08:01 PM Ruby Revision 02267417 (git): ZJIT: Profile specific objects for invokeblock (#15051)
I made a special kind of `ProfiledType` that looks at specific objects, not just their classes/shapes (https://github.com/ruby/ruby/pull/15051). Then I profiled some of our benchmarks.
For lobsters:
```
Top-6 invokeblock handler (100.0...
tekknolagi (Maxwell Bernstein)

10/31/2025

07:48 PM Ruby Revision 7688b050 (git): ZJIT: Optimize VM_METHOD_TYPE_ALIAS (#15018)
Just loop until you find a non-alias. tekknolagi (Maxwell Bernstein)
05:54 PM Ruby Revision 2c88500c (git): ZJIT: Simplify some profiling APIs (#15017)
tekknolagi (Maxwell Bernstein)

10/30/2025

07:15 PM Ruby Revision 6707945f (git): ZJIT: Split out optimized method types in stats (#15002)
We can see send/block call/struct aref/... e.g. on lobsters:
```
Top-9 not optimized method types for send_without_block (100.0% of total 3,133,812):
iseq: 2,004,557 (64.0%)
optimized_struct_aref: 496,232 (15.8%)
...
tekknolagi (Maxwell Bernstein)
05:30 PM Ruby Revision 57f76f62 (git): ZJIT: Fix incorrect self.class.respond_to? folding (#15001)
Right now we have a subtle type system bug around `types::Class`. Until
that is resolved, stop marking `Kernel#class` as returning
`types::Class`, which fixes Rubocop.
Re: https://github.com/Shopify/ruby/issues/850
tekknolagi (Maxwell Bernstein)

10/29/2025

04:49 PM Ruby Revision 0d9f8580 (git): ZJIT: Fix LoadIvarExtended test (#14989)
tekknolagi (Maxwell Bernstein)
12:11 AM Ruby Revision f8a333ae (git): ZJIT: Add type checker to HIR (#14978)
Allow instructions to constrain their operands' input types to avoid
accidentally creating invalid HIR.
tekknolagi (Maxwell Bernstein)

Also available in: Atom