Change JSCLASS_PRIVATE_IS_NSISUPPORTS uses to use a reserved slot
Categories
(Core :: JavaScript Engine, task, P3)
Tracking
()
| Tracking | Status | |
|---|---|---|
| firefox92 | --- | fixed |
People
(Reporter: jandem, Assigned: jandem)
References
Details
Attachments
(6 files)
|
48 bytes,
text/x-phabricator-request
|
Details | Review | |
|
48 bytes,
text/x-phabricator-request
|
Details | Review | |
|
48 bytes,
text/x-phabricator-request
|
Details | Review | |
|
48 bytes,
text/x-phabricator-request
|
Details | Review | |
|
48 bytes,
text/x-phabricator-request
|
Details | Review | |
|
48 bytes,
text/x-phabricator-request
|
Details | Review |
We can change JSCLASS_PRIVATE_IS_NSISUPPORTS to JSCLASS_SLOT0_IS_NSISUPPORTS and use a reserved slot for these classes instead.
| Assignee | ||
Comment 1•4 years ago
|
||
| Assignee | ||
Comment 2•4 years ago
|
||
Depends on D119498
| Assignee | ||
Comment 3•4 years ago
|
||
It's easier to reason about the JSClass flags without the extra level of indirection.
Depends on D119499
| Assignee | ||
Comment 4•4 years ago
|
||
Depends on D119500
| Assignee | ||
Comment 5•4 years ago
|
||
This is a step towards removing object private slots.
Classes with JSCLASS_PRIVATE_IS_NSISUPPORTS now use JSCLASS_SLOT0_IS_NSISUPPORTS
instead. For most classes this means we need to add an extra reserved slot and remove
the private slot.
Global objects (SimpleGlobalObject and the XPConnect BackstagePass global) however
can use the JSCLASS_GLOBAL_APPLICATION_SLOTS already there. These slots are only
used for DOM globals.
Depends on D119501
| Assignee | ||
Comment 6•4 years ago
|
||
Every JSObject has a non-null JSClass and a lot of code depends on this.
Comment 8•4 years ago
|
||
| bugherder | ||
https://hg.mozilla.org/mozilla-central/rev/202535112cbd
https://hg.mozilla.org/mozilla-central/rev/cebc11755de6
https://hg.mozilla.org/mozilla-central/rev/bd12f699ea33
https://hg.mozilla.org/mozilla-central/rev/69fbadc353c3
https://hg.mozilla.org/mozilla-central/rev/991fd9b37ce8
https://hg.mozilla.org/mozilla-central/rev/fe76633b0f3b
Description
•