Skip to content

DFG: stop rooting m_mustHandleValues from the concurrent compiler plan#308

Open
robobun wants to merge 1 commit into
pin/4895f45dfrom
robobun/dfg-plan-weak-musthandlevalues
Open

DFG: stop rooting m_mustHandleValues from the concurrent compiler plan#308
robobun wants to merge 1 commit into
pin/4895f45dfrom
robobun/dfg-plan-weak-musthandlevalues

DFG: stop rooting m_mustHandleValues from the concurrent compiler plan

40ff52a
Select commit
Loading
Failed to load commit list.
Claude / Claude Code Review completed Jul 18, 2026 in 20m 2s

Code review found 1 important issue

Found 1 candidates, confirmed 3. See review comments for details.

Details

Severity Count
🔴 Important 1
🟡 Nit 2
🟣 Pre-existing 0
Severity File:Line Issue
🟡 Nit Source/JavaScriptCore/dfg/DFGPlan.cpp:684 Vestigial cleanMustHandleValuesIfNecessary() in checkLivenessAndVisitChildren()

Annotations

Check warning on line 684 in Source/JavaScriptCore/dfg/DFGPlan.cpp

See this annotation in the file changed.

@claude claude / Claude Code Review

Vestigial cleanMustHandleValuesIfNecessary() in checkLivenessAndVisitChildren()

nit: now that `finalizeInGC()` calls `cleanMustHandleValuesIfNecessary()` itself, this call has no reader — the `appendUnbarriered` loop it used to serve is gone, and both remaining consumers (`finalizeInGC`, `compileInThreadImpl`) clean for themselves. It's harmless (idempotent, early-returns on the flag), but keeping a call that mutates `m_mustHandleValues` state directly under a comment saying "m_mustHandleValues is not visited here" reads confusingly; consider dropping it.