js::CopyScript spring cleaning
Categories
(Core :: JavaScript Engine, enhancement, P1)
Tracking
()
| Tracking | Status | |
|---|---|---|
| firefox67 | --- | fixed |
People
(Reporter: tcampbell, Assigned: tcampbell)
References
Details
Attachments
(8 files)
|
47 bytes,
text/x-phabricator-request
|
Details | Review | |
|
47 bytes,
text/x-phabricator-request
|
Details | Review | |
|
47 bytes,
text/x-phabricator-request
|
Details | Review | |
|
47 bytes,
text/x-phabricator-request
|
Details | Review | |
|
47 bytes,
text/x-phabricator-request
|
Details | Review | |
|
47 bytes,
text/x-phabricator-request
|
Details | Review | |
|
47 bytes,
text/x-phabricator-request
|
Details | Review | |
|
47 bytes,
text/x-phabricator-request
|
Details | Review |
Similar to Bug 1525505, the CopyScript function needs a lot of cleanup to better match the rest of the JSScript initialization code. This is currently making it hard to do major changes around JSScript safely and efficiently.
| Assignee | ||
Comment 1•7 years ago
|
||
| Assignee | ||
Comment 2•7 years ago
|
||
This is a code-motion patch. Note that the order of initialization of
PrivateScriptData vs JSScript fields changes but the reordered
operations are all infallible/gc-free so this is not observable.
Depends on D20332
| Assignee | ||
Comment 3•7 years ago
|
||
Also use PrivateScriptData directly instead of through the JSScript.
Depends on D20333
| Assignee | ||
Comment 4•7 years ago
|
||
Depends on D20334
| Assignee | ||
Comment 5•7 years ago
|
||
The JSScript fields are now initialized before the script data objects
to better align with XDRScript.
Depends on D20335
| Assignee | ||
Comment 6•7 years ago
|
||
This is an older bug that was hidden in the old CopyScript
implementation.
Depends on D20336
| Assignee | ||
Comment 7•7 years ago
|
||
Similar to Bug 1526324, we should avoid one-off optimizations that share
runtime data between script copies.
Depends on D20337
| Assignee | ||
Comment 8•7 years ago
|
||
Follow-up work for other bugs:
- Revisit the scope cloning logic to simplify it more
- Minimize the three-way diff between BytecodeCompiler/XDRScript/CopyScript now that they are reasonably close
| Assignee | ||
Comment 9•7 years ago
|
||
Comment 10•7 years ago
|
||
Comment 11•7 years ago
|
||
| bugherder | ||
https://hg.mozilla.org/mozilla-central/rev/a0192ce3b15d
https://hg.mozilla.org/mozilla-central/rev/cfcd89883d1e
https://hg.mozilla.org/mozilla-central/rev/05d3db762616
https://hg.mozilla.org/mozilla-central/rev/de9bb567ad44
https://hg.mozilla.org/mozilla-central/rev/b89f5efa1bf9
https://hg.mozilla.org/mozilla-central/rev/f0e44d5ad172
https://hg.mozilla.org/mozilla-central/rev/348464a06c14
https://hg.mozilla.org/mozilla-central/rev/73749ff4f2ef
Description
•