Unify the forwarding mechanism between Nursery and Compacting

RESOLVED FIXED in mozilla35

Status

()

RESOLVED FIXED
4 years ago
4 years ago

People

(Reporter: terrence, Assigned: jonco)

Tracking

Trunk
mozilla35
Points:
---

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(1 attachment)

(Reporter)

Description

4 years ago
Brian pointed out on IRC that the comment in TypedObject::obj_sweep about why we need MaybeForwarded is extremely confusing; in particular, it is not clear it it also works on nursery pointers and if not, why it's not needed for Nursery pointers. We eventually determined that nothing touched there is nursery allocable and the comment was just misleading.

However, it did occur to me that we shouldn't even need this distinction. We currently use different mechanisms for forwarding because compacting needs to keep the shape pointer live for longer. There is no reason that the nursery cannot use the same forwarding layout, however. It should be simple to reify them and give us a nice complexity and clarity win.
(Assignee)

Comment 1

4 years ago
Unifying these mechanisms is a great idea.
Assignee: nobody → jcoppeard
(Assignee)

Comment 2

4 years ago
Created attachment 8492225 [details] [diff] [review]
unify-forwarding-mechanisms
Attachment #8492225 - Flags: review?(terrence)
(Reporter)

Comment 3

4 years ago
Comment on attachment 8492225 [details] [diff] [review]
unify-forwarding-mechanisms

Review of attachment 8492225 [details] [diff] [review]:
-----------------------------------------------------------------

Great!
Attachment #8492225 - Flags: review?(terrence) → review+
(Assignee)

Comment 5

4 years ago
Fix for build errors in non-unified builds:

https://hg.mozilla.org/integration/mozilla-inbound/rev/d47f0d824c2d
This did land on mozilla-central, though the bug didn't get marked. Sorry for any confusion.
https://hg.mozilla.org/mozilla-central/rev/3161ad541392
https://hg.mozilla.org/mozilla-central/rev/d47f0d824c2d
Status: NEW → RESOLVED
Last Resolved: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla35
You need to log in before you can comment on or make changes to this bug.