Store ParserAtom HashNumber in XDR buffer
Categories
(Core :: JavaScript Engine, task, P1)
Tracking
()
Tracking | Status | |
---|---|---|
firefox84 | --- | fixed |
People
(Reporter: tcampbell, Assigned: tcampbell)
References
Details
Attachments
(3 files)
In order to speed up decoding of XDR atoms data under Stencil, we can consider transcoding the HashNumber as well. With cleaned up APIs, this avoids extra lookups and hash computations.
(Note that this may be superceded by Bug 1674351..)
Assignee | ||
Comment 1•4 years ago
|
||
This is the same code as internChar16Seq if we chose the right
parameterization, so simplify the code a little.
Depends on D95296
Assignee | ||
Comment 2•4 years ago
|
||
We currently assert that XDR'd ParserAtoms are unique, but still use the
slightly slower lookupForAdd APIs. Instead, the patch uses putNew which
avoids an extra comparison on hash collisions.
Also greatly simplify the Char16LE case which is only used for XDR and can
safely assume no static strings or non-wide atoms are passed.
Depends on D95464
Assignee | ||
Comment 3•4 years ago
|
||
Include the HashNumber in XDR data so we don't need to recompute it and can
speed up interning of these known-to-be-unique ParserAtoms.
Depends on D95465
Updated•4 years ago
|
Updated•4 years ago
|
Updated•4 years ago
|
Comment 5•4 years ago
|
||
Backed out 4 changesets (bug 1674674, bug 1674869) for build bustage in gecko/js/src/frontend/StencilXdr.cpp. CLOSED TREE
Log:
https://treeherder.mozilla.org/logviewer?job_id=320586330&repo=autoland&lineNumber=13792
Push that introduced failures:
https://treeherder.mozilla.org/jobs?repo=autoland&group_state=expanded&revision=124f2166945377d87339b99e7c468122caa76052
Backout:
https://hg.mozilla.org/integration/autoland/rev/e08cd4a3c8157686e168d48472a6fe501f3c7157
Assignee | ||
Comment 7•4 years ago
|
||
I added an ifdef
guard around the static_asserts. The has_unique_object_representations
method should be available in C++17, but there is something weird in the base-toolchains-clang build.
Comment 8•4 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/3c0d21f3e344
https://hg.mozilla.org/mozilla-central/rev/214b47b0c334
https://hg.mozilla.org/mozilla-central/rev/c06546640185
Description
•