Closed Bug 1133369 Opened 10 years ago Closed 10 years ago

Use consistent allocation kinds for new objects after converting an unboxed group

Categories

(Core :: JavaScript Engine, defect)

x86
macOS
defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla39
Tracking Status
firefox39 --- fixed

People

(Reporter: bhackett1024, Assigned: bhackett1024)

References

Details

Attachments

(1 file)

Attached patch patchSplinter Review
If we convert instances of an unboxed group to native objects, the new script information for the group is removed and a group will be created later for 'new' objects which is unrelated to the original unboxed group. That replacement group might end up creating objects with a different allocation kind than the original unboxed group, which will lead to polymorphic behavior at allocation sites that access both the old and new objects. For speed, it would be better if the objects created by calling 'new' on a script always have the same allocation kind. This is the main cause of the regression when using --unboxed-objects on octane-box2d. Fixing this, as the attached patch does, reduces the regression on box2d with unboxed objects to <2% on x86.
Attachment #8564787 - Flags: review?(jdemooij)
Attachment #8564787 - Flags: review?(jdemooij) → review+
Assignee: nobody → bhackett1024
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla39
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: