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•6 years ago
|
||
Assignee | ||
Comment 2•6 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•6 years ago
|
||
Also use PrivateScriptData directly instead of through the JSScript.
Depends on D20333
Assignee | ||
Comment 4•6 years ago
|
||
Depends on D20334
Assignee | ||
Comment 5•6 years ago
|
||
The JSScript fields are now initialized before the script data objects
to better align with XDRScript.
Depends on D20335
Assignee | ||
Comment 6•6 years ago
|
||
This is an older bug that was hidden in the old CopyScript
implementation.
Depends on D20336
Assignee | ||
Comment 7•6 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•6 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•6 years ago
|
||
Comment 10•6 years ago
|
||
Comment 11•6 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
•