Found by the array-index perf lane (#11588/#11589). It reproduces on UNMODIFIED main d57f5139f.
The #10514 repro variants grown and grown_typed (an array grown by a[i] = v / push and then read in a loop; the typed-array variant likewise) segfault under the seeded GC schedule: PERRY_GC_SCHEDULE_SEED=<n> with PERRY_GC_PROTECT_FROMSPACE=1. Other seeds and variants are fine.
This is the classic rooting/forwarding bug signature (see CLAUDE.md "Rooting-bug instruments"). A likely suspect is the array growth-forwarding path: a forwarded old array or its element buffer referenced across a moving minor GC.
Needs: the failing seed(s), a backtrace with the from-space reporter output, a reduced repro, and a fix. The #10514 microbench is in the perf lane results at /root/claude-perf-arrayidx-results/ on perrymaster.
Found by the array-index perf lane (#11588/#11589). It reproduces on UNMODIFIED main
d57f5139f.The #10514 repro variants
grownandgrown_typed(an array grown bya[i] = v/pushand then read in a loop; the typed-array variant likewise) segfault under the seeded GC schedule:PERRY_GC_SCHEDULE_SEED=<n>withPERRY_GC_PROTECT_FROMSPACE=1. Other seeds and variants are fine.This is the classic rooting/forwarding bug signature (see CLAUDE.md "Rooting-bug instruments"). A likely suspect is the array growth-forwarding path: a forwarded old array or its element buffer referenced across a moving minor GC.
Needs: the failing seed(s), a backtrace with the from-space reporter output, a reduced repro, and a fix. The #10514 microbench is in the perf lane results at
/root/claude-perf-arrayidx-results/on perrymaster.