Fix offthread baseline compilation
Categories
(Core :: JavaScript Engine: JIT, task, P1)
Tracking
()
| Tracking | Status | |
|---|---|---|
| firefox141 | --- | fixed |
People
(Reporter: iain, Assigned: iain)
References
(Blocks 2 open bugs)
Details
Attachments
(3 external files)
While working on bug 1960433, I've uncovered a number of latent issues in the initial implementation of offthread baseline compilation.
| Assignee | ||
Comment 1•1 year ago
|
||
RecompileBaselineScriptForDebugMode is normally enough here, but there are some corner cases where it's insufficient. In particular, if we already have an IonScript at this point, we need to invalidate it before replacing the baseline script, to preserve our invariants about BaselineScript implying IonScript. Looking at the code that calls RecompileBaselineScriptForDebugMode, there's enough complexity that it seems better to reproduce the existing approach more precisely. This requires converting OSREntryForFrame into a VM call.
This path now more closely matches the existing path in CanEnterBaselineJIT.
| Assignee | ||
Comment 2•1 year ago
|
||
| Assignee | ||
Comment 3•1 year ago
|
||
TSAN doesn't like it when we look at function flags offthread.
Comment 5•1 year ago
|
||
| bugherder | ||
https://hg.mozilla.org/mozilla-central/rev/03a954bf8c9f
https://hg.mozilla.org/mozilla-central/rev/0865222c28a0
https://hg.mozilla.org/mozilla-central/rev/e3faaea247b6
https://hg.mozilla.org/mozilla-central/rev/4c020f44c7c3
Updated•1 year ago
|
Description
•