dhecht
JSC contributor
Summary
Primarily an allocator and JSC compiler contributor, with the bulk of recent work in bmalloc/libpas — a sustained run of tests exercising zeroed-memory reuse (AllocationZeroingTests, IsoHeapChaosTests, `zero_mode` behavior across large-free-heap split/recoalesce) alongside the underlying fixes those tests surfaced: an inverted MADV_ZERO support latch in VMAllocate.cpp, a clobbered should-go-again result in `pas_thread_local_cache_for_all`, and a read from a deallocated TLC. The compiler-side work runs in parallel, including removal of the B3 Air graph coloring register allocator and a leaked StringImpl reference in `LazyJSValue::emit`, and the security fixes split across the same two areas — Air spill modeling of early defs, and a missing validity check on the compact heap bump in `pas_enumerator_create`. Systematic-variant candidate: zero-mode and page-state assumptions in libpas. The test additions map out where zeroed-reuse invariants can break under eviction, out-of-order faults, and paged-out backing, and each cluster of tests has been landing next to a real correctness bug in the same paths.
Components
Security Fix History
Hardening Commits
- No hardening commits recorded
Recent Commits
- 2026-08-07 [JSC] LazyJSValue::emit leaks a StringImpl reference when finalization is skipped
- 2026-08-04 [JSC] Document the cell construction protocol at JSCell::finishCreation()
- 2026-08-04 [run-jsc-stress-tests] Print per-test execution times when the progress meter is enabled
- 2026-08-01 REGRESSION(318202@main): Win-Build-EWS - failing compile-webkit
- 2026-07-31 [libpas] pas_thread_local_cache_for_all clobbers its should-go-again result
- 2026-07-30 [libpas] Fix a benign read from a deallocated TLC
- 2026-07-30 [JSC] Remove the B3 Air graph coloring register allocator
- 2026-07-29 [libpas] Fix frequent-scavenging test scopes decommitting almost nothing
- 2026-07-29 [libpas] Cover unwritten and paged-out pages in IsoHeapChaosTests
- 2026-07-28 [libpas] Add evicted, read-faulted backing coverage to AllocationZeroingTests
- 2026-07-27 [bmalloc] MADV_ZERO support latch is inverted in VMAllocate.cpp
- 2026-07-21 [libpas] Check zeroed and large allocations in IsoHeapChaosTests
- 2026-07-17 [libpas] Add compact-heap coverage to AllocationZeroingTests
- 2026-07-17 [libpas] Add fragmentation and aliasing coverage to AllocationZeroingTest
- 2026-07-17 [libpas] Verify large zeroed allocations under out-of-order page faults