You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* perf(codegen,runtime): #6804 — PIC compares the discriminated shape token; slot bounds check
The per-site PIC token is now: header-stamped ShapeId lifted above the
48-bit pointer space (bit 62) for stamped plain objects, keys pointer
for class instances / unstamped receivers — one compare, no
discriminant word, the token kinds cannot collide numerically. Id
tokens are immune to address-recycling ABA, so owned keys arrays are
safely PIC-cacheable again for plain objects. The hit path also bounds
the cached slot by the receiver's inline capacity, closing a latent
over-read for same-shape siblings with different physical allocations.
* docs(changelog): changeset for #6808
---------
Co-authored-by: Ralph Küpper <ralph@skelpo.com>
perf(codegen): #6804 second half — the generic property-get PIC compares a discriminated shape token: header-stamped ShapeIds (lifted above the 48-bit pointer space) for plain objects — stable across grow-reallocs and GC moves, immune to address-recycling, and re-enabling PIC caching for owned keys arrays — with keys-pointer tokens retained for class instances. The hit path also bounds the cached slot by the receiver's inline capacity, closing a latent over-read for same-shape siblings with different physical allocations.
0 commit comments