Skip to content

Test two inline-cache entries inline at dynamic-tier property sites - #2367

Merged
ctate merged 1 commit into
mainfrom
ctate/test-two-inline-cdefc7
Oct 27, 2026
Merged

ctate merged 1 commit into
mainfrom
ctate/test-two-inline-cdefc7

Conversation

@ctate

@ctate ctate commented Oct 27, 2026

Copy link
Copy Markdown
Collaborator
  • Property sites that see two object layouts (object literals of one record in two key orders) no longer call the out-of-line probe for the second layout.
  • bench:runtime dynamic-properties: 16% faster (10M rounds 5.40 s -> 4.69 s on 4 vCPUs); every other workload unchanged.

A dynamic-tier property site tested only the first entry of its cache
inline and called scr_js_get_probe (or scr_js_store_probe) for anything
else. A site that sees two layouts, such as object literals of one
record built in two key orders, then took the out-of-line probe on
every access to objects of its second layout.

Sites now test the first two entries inline, own or prototype, for
reads and replacing writes. The probe still answers the third and fourth
entries, misses and everything that is not plain data.
@vercel

vercel Bot commented Oct 27, 2026 •

Copy link
Copy Markdown
Contributor

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
scriptc Ready Ready Preview, v0 Oct 27, 2026 1:48am UTC

@ctate
ctate merged commit 06bd585 into main Oct 27, 2026
67 checks passed
@ctate
ctate deleted the ctate/test-two-inline-cdefc7 branch October 27, 2026 02:20

This branch was successfully deployed

1 active deployment
Preview — 6beed6cb Deployed Oct 27, 2026 by vercel[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant