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
Ten pinned PR-249 executables exercise optimized-tier trap polling, code/call-link artifact lifetime, retirement/jettison, stale-base invalidation, Class-A GC stops, value-profile publication, compile counters, and IC dictionary transitions. They remain blocked until real optimizing-tier behavior exists; shell stubs or unconditional counters are not promotion.
Replace JSC-only option spellings with explicit profile mappings only where semantics are equivalent.
Promote each case only after default/no-GIL differential and sanitizer evidence passes.
Update the PR-249 inventory and exact runtime totals without hidden skips.
Current checkpoint
The verifier still reports 243 promoted, 10 optimizer-blocked, and 6 terminal executables out of 259. The real optimizer now has exact terminal side exits, invalidation-polled loop OSR, precise live relocation (#437 complete), region-scoped conditional-exit chains, sequential shared joins, shared/independent latches, and conditional continue chains with three or more backedges through 48bfe60/b80e81f7/3d78eaf2, including general reducible and fused nested-loop regions. Exact termination checkpoints, statement-hook fallback, and fail-closed irreducible control are covered. The latest combined optimizer TSan gate passes 42/42 lowering and 80/80 runtime/context tests.
The corpus remains blocked on #132/#133 native property/array regions, #433 call-link/IC retirement and Class-A stop semantics, backend evidence, and explicit hook/profile promotion. No fake compile counters or shell stubs are exposed. Benchmark scores are unchanged because the published workloads do not use this new CFG shape.
Parent: #143
Depends on: #146, #132, #133
Roadmap: #134
Ten pinned PR-249 executables exercise optimized-tier trap polling, code/call-link artifact lifetime, retirement/jettison, stale-base invalidation, Class-A GC stops, value-profile publication, compile counters, and IC dictionary transitions. They remain blocked until real optimizing-tier behavior exists; shell stubs or unconditional counters are not promotion.
Exact scope and owners
checktraps-invalidation.js— optimizer polls and invalidation points (JIT: add optimizing profiles, IR, and tier publication #431, JIT: implement OSR exits, deoptimization, and precise GC #432, JIT: make trap polling and optimized artifact lifetime concurrency-safe #433).cve/mc-aint-poll-resume-stale-elided.js— no-GIL poll/park, jettison, and deopt resume (JIT: implement OSR exits, deoptimization, and precise GC #432, JIT: make trap polling and optimized artifact lifetime concurrency-safe #433).cve/mc-code-calllink-writer-writer.js— atomic call-link publication and epoch retirement (JIT: make trap polling and optimized artifact lifetime concurrency-safe #433).cve/mc-dos-retired-artifact-churn.js— bounded handler/code retirement and GC accounting (JIT: make trap polling and optimized artifact lifetime concurrency-safe #433).cve/mc-jit-stale-base-grow-oob.js— array base/length guards across polls (JIT: lower verified packed-array regions into the native tier #133, JIT: implement OSR exits, deoptimization, and precise GC #432, JIT: make trap polling and optimized artifact lifetime concurrency-safe #433).cve/mc-safe-gcwait-vs-classa-stop{,-noropevariant}.js— Class-A invalidation ordered against shared GC (JIT: implement OSR exits, deoptimization, and precise GC #432, JIT: make trap polling and optimized artifact lifetime concurrency-safe #433).cve/mc-val-fire-vs-link.js— advisory profiles plus link-time watchpoint revalidation (JIT: add optimizing profiles, IR, and tier publication #431, JIT: make trap polling and optimized artifact lifetime concurrency-safe #433).jit/foreign-reify-getbyid-converges.js— guarded property lowering, side-exit convergence, and real compile counts (JIT: lower guarded property regions into the native tier #132, JIT: add optimizing profiles, IR, and tier publication #431, JIT: implement OSR exits, deoptimization, and precise GC #432).jit/ic-publish-reset-loops.js— atomic property-IC publication/reset and dictionary transitions (JIT: lower guarded property regions into the native tier #132, JIT: make trap polling and optimized artifact lifetime concurrency-safe #433).Acceptance
Current checkpoint
The verifier still reports 243 promoted, 10 optimizer-blocked, and 6 terminal executables out of 259. The real optimizer now has exact terminal side exits, invalidation-polled loop OSR, precise live relocation (#437 complete), region-scoped conditional-exit chains, sequential shared joins, shared/independent latches, and conditional continue chains with three or more backedges through 48bfe60/b80e81f7/3d78eaf2, including general reducible and fused nested-loop regions. Exact termination checkpoints, statement-hook fallback, and fail-closed irreducible control are covered. The latest combined optimizer TSan gate passes 42/42 lowering and 80/80 runtime/context tests.
The corpus remains blocked on #132/#133 native property/array regions, #433 call-link/IC retirement and Class-A stop semantics, backend evidence, and explicit hook/profile promotion. No fake compile counters or shell stubs are exposed. Benchmark scores are unchanged because the published workloads do not use this new CFG shape.