Parent: #498 Related: #1070, #1056
Executed against Node and the 8473c06 engine in tree and required-VM modes. For function f(a) { a = 9; return [Array.prototype.indexOf.call(arguments, 9), Array.prototype.lastIndexOf.call(arguments, 9), Array.prototype.includes.call(arguments, 9)]; } f(1), Node returns [0,0,true]; both zig-js tiers return [-1,-1,false].
The shared arrIndexGet dense shortcut treats mapped arguments as plain Arrays. It reads stale dense backing storage rather than the live parameter map. This helper is used by borrowed Array methods beyond searches.
Acceptance:
- Mapped arguments indexed reads in shared Array method helpers use canonical mapped-cell semantics.
- Pin parameter-to-arguments writes, arguments-to-parameter writes, severed mappings, deletion/inheritance, accessors, GC, and strict/unmapped arguments across tree/required-VM/no-JIT modes.
- Focused normal and unsuppressed TSan tests pass.
- Exact before/after arguments and relevant Array corpus and tree/VM comparisons introduce no new failures/divergences.
No throughput or public conformance-score claim is intended.