General

Profile

alanwu (Alan Wu)

  • Login: alanwu
  • Registered on: 10/28/2018
  • Last sign in: 09/30/2026

Issues

open closed Total
Assigned issues 3 31 34
Reported issues 1 51 52

Projects

Project Roles Registered on
Ruby Committer 03/19/2021

Activity

Today

04:54 PM Ruby Feature #22392: Allow refinements to define && and ||
Please no. Changing non-method call operations to be method calls has disastrous time and space cost for everyone involved, JIT or not. If accepted, this would be yet another case of refinement making people that do not use it pay in ter... alanwu (Alan Wu)
12:05 AM Ruby Revision 95543897 (git): ZJIT: Don't panic when calling RubyVM::ZJIT.reset_stats! with ZJIT off
[Backport #22327] (The rust harness isn't setup for running code without
ZJIT, so the test is in ruby.)
alanwu (Alan Wu)

09/29/2026

11:41 PM Ruby Bug #22327 (Closed): RubyVM::ZJIT.reset_stats! aborts the process (Rust panic) when ZJIT is not enabled
Applied in changeset commit:git|b4eb7f249bf9dea7be48abd47a9ad0feac2bfa58.
----------
ZJIT: Don't panic when calling RubyVM::ZJIT.reset_stats! with ZJIT off
[Bug #22327] (The rust harness isn't setup for running code without
ZJIT, so th...
alanwu (Alan Wu)
11:41 PM Ruby Revision b4eb7f24 (git): ZJIT: Don't panic when calling RubyVM::ZJIT.reset_stats! with ZJIT off
[Bug #22327] (The rust harness isn't setup for running code without
ZJIT, so the test is in ruby.)
alanwu (Alan Wu)
11:41 PM Ruby Revision 7e844b9e (git): ZJIT: Take VM lock in `RubyVM::ZJIT.reset_stats!` to avoid data race
Data race happens when multi-ractor. Even before this patch, no one
seems to do (re)allocations without lock, so the I couldn't come up with
a case where the race ends in a crash. Let's not race (it's rust UB).
alanwu (Alan Wu)

09/24/2026

06:01 PM Ruby Revision ff03ecf3 (git): ZJIT: Print `PatchPoint` reference to `Insn::Snapshot` when printing snapshots
So both the definition and the usage are shown. Note that this
is only when, say, `--zjit-dump-hir=all`, where both ends are present.
alanwu (Alan Wu)

09/23/2026

10:05 PM Ruby Revision a8bc3cf5 (git): ZJIT: Add test_setlocal_getlocal_no_operands_unification
alanwu (Alan Wu)
10:05 PM Ruby Revision 882e54f4 (git): ZJIT: Treat `getlocal` and `setlocal` uniformly with `*_WC_*` variants
Previously, `setlocal level=0` did not set the local in the frame state
during HIR build, unlike `setlocal_WC_0`. `getlocal` and `getlocal_WC_0`
had the same issue.
I don't know if it's possible to trigger an ZJIT issue with default
ise...
alanwu (Alan Wu)
06:24 PM Ruby Bug #22335: Stack corruption with >31 keyword args and refined Integer#==
> Not an area of ruby I'm very familiar with, but I think perhaps we should also be extending sp in vm_callee_setup_arg and vm_call_iseq_setup_kwparm_kwarg?
These don't extend SP because they're fast paths that try to do minimal work...
alanwu (Alan Wu)

09/22/2026

11:17 PM Ruby Bug #22377 (Closed): compile.c: `getlocal` not turned into `getlocal_WC_0`
Missed by the "operands_unification" pass, somehow.
See 0023 below:
```text
$ ./miniruby --parser=parse.y --dump=insns -e '
assign = ->(outer) {
m = Module.new
m.set_temporar...
alanwu (Alan Wu)

Also available in: Atom