Don't convert prototype objects to dictionary mode for shadowed properties
Categories
(Core :: JavaScript Engine, task, P3)
Tracking
()
Tracking | Status | |
---|---|---|
firefox92 | --- | fixed |
People
(Reporter: jandem, Assigned: jandem)
References
Details
Attachments
(4 files)
ReshapeForShadowedProp should use the same mechanism to invalidate the shape teleporting optimization as ReshapeForProtoMutation. This is simpler, cleaner, and avoids dictionary mode conversions.
The dictionary conversion here was always a bit of a hack, one of the ReShape goals is to get rid of these dictionary conversions that don't have anything to do with property mutation.
Assignee | ||
Comment 1•3 years ago
|
||
This reverts the change in bug 1507433. Now that shape always implies prototype,
we don't need to check the objects between receiver and holder have the uncacheable-proto
flag. This simplifies the next parts.
Assignee | ||
Comment 2•3 years ago
|
||
The flag is now only used for the shape teleporting optimization so be more explicit
about this. The next patch will use this flag also for the shadowed-property case.
Depends on D118359
Assignee | ||
Comment 3•3 years ago
|
||
The flag is now used to guard against both cases teleporting has to watch out
for: proto changes and shadowed properties.
This lets us get rid of dictionary conversions and reshaping for ReshapeForShadowedProp.
Depends on D118360
Assignee | ||
Comment 4•3 years ago
|
||
Comment 6•3 years ago
|
||
Backed out 4 changesets (bug 1717438) for causing bc failures in browser_ext_browserAction_context.js.
https://hg.mozilla.org/integration/autoland/rev/6778252284f52fe00621915df01e65d8b2047088
Push with failures:
https://treeherder.mozilla.org/jobs?repo=autoland&revision=13111b300e29be7ef23aba990a330a1068dc1cf9&selectedTaskRun=OLZZp6cBQN6XUEEeQJzQEQ.0
Failure log:
https://treeherder.mozilla.org/logviewer?job_id=345290748&repo=autoland&lineNumber=19421
https://treeherder.mozilla.org/logviewer?job_id=345301972&repo=autoland&lineNumber=2498
Comment 8•3 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/8c8f5b2f16d3
https://hg.mozilla.org/mozilla-central/rev/5eb0f543b04a
https://hg.mozilla.org/mozilla-central/rev/7a624fe10146
https://hg.mozilla.org/mozilla-central/rev/87cc59582372
Assignee | ||
Updated•3 years ago
|
Description
•