General

Profile

alanwu (Alan Wu)

  • Login: alanwu
  • Registered on: 10/28/2018
  • Last sign in: 02/13/2026

Issues

open closed Total
Assigned issues 5 24 29
Reported issues 1 49 50

Projects

Project Roles Registered on
Ruby Committer 03/19/2021

Activity

03/12/2026

04:08 PM Ruby Revision 1a0e67d3 (git): ZJIT: `::RubyVM::ZJIT.induce_side_exit!` and `induce_compile_failure!`
Tells ZJIT to do a side exit or to fail to compile, useful testing and
for bug reports. We are picky about the syntactic form so we can tell
where the call lands early in the compiler pipeline. The `::` prefix
allows us to interpret it w...
alanwu (Alan Wu)

03/09/2026

06:07 PM Ruby Revision a2b9c8a5 (git): ZJIT: Avoid `NoSingletonClass` patchpoint when already a singleton class
The true purpose of assume_no_singleton_classes() is to retain soundness
in event of the effective class of values changing. When the effective
class is already a singleton class that can never happen. (Except due to
IO#reopen, but that'...
alanwu (Alan Wu)

03/05/2026

05:24 PM Ruby Revision 192fc379 (git): Add previous parent commit to .git-blame-ignore-revs [ci skip]
alanwu (Alan Wu)
05:23 PM Ruby Revision b78e0a6d (git): ZJIT: Normalize to non-raw string literals in snapshots with `s/@r"/@"/`
Since cargo-insta [version 1.45.0], raw string literals are only used when
snapshot contents require them. This creates unnecessary diff hunks when
updating older snapshots that still use raw literals.
Normalize all snapshots to use non...
alanwu (Alan Wu)

03/02/2026

04:05 PM Ruby Revision 6a31ffa3 (git): ZJIT: Move is_meta_class() from hir::Function to VALUE
`self` was unused. alanwu (Alan Wu)

02/28/2026

02:29 AM Ruby Revision 4eadf035 (git): ZJIT: Check special_const_p() before using rb_obj_shape_id()
It only works with heap objects. alanwu (Alan Wu)
02:29 AM Ruby Revision 3251792f (git): ZJIT: Fix infinite loop from `make_equal_to(x,y)` where `x=y`
Sometimes it's convenient to write that
`make_equal_to(x, big_decision_tree_to_find_replacement)` where
most of the time the decision tree gives something not equal to `x`.
Since infinite loops are hard to debug and this condition is ea...
alanwu (Alan Wu)

02/27/2026

02:14 PM Ruby Revision 2ecda70f (git): ZJIT: GuardType and GuardTypeNot can read from memory
When guarding on anything but special const forms (`types::Immediate`),
we need to dereference the VALUE to load RBasic::flags and maybe
RBasic::class. Those are memory read effects.
alanwu (Alan Wu)

02/20/2026

04:04 PM Ruby Revision 906176ad (git): ZJIT: zjit-bisect.rb: Pass options with -T for `make test-spec`
It was passing options to the test harness rather than ruby(1). alanwu (Alan Wu)

02/18/2026

03:16 PM Ruby Revision 219ad682 (git): ZJIT: Don't specialize `super` from within a block
As we found out from YJIT, `super` from within a block needs a loop for
the running CME guard, and the current LEP based guard always fails.
Don't specialize for now so we use the fallback instead of side-exiting.
alanwu (Alan Wu)

Also available in: Atom