Closed Bug 1085029 Opened 10 years ago Closed 10 years ago

Use common-descriptor logic more often in TypedObjectPrediction

Categories

(Core :: JavaScript Engine: JIT, defect)

x86
macOS
defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla36

People

(Reporter: bhackett1024, Assigned: bhackett1024)

References

Details

Attachments

(1 file)

Attached patch patchSplinter Review
Currently TypedObjectPrediction distinguishes between the cases when it knows the TypedProto vs. the TypeDescr, with better information in the latter case.  This distinction isn't useful as the TypedProto points to the descriptor (and is, indeed, how instances determine their descriptor) so I guess this is probably historic code that needs reworking.

The attached patch removes the Proto case from TypedObjectPrediction, so that we can predict either nothing, a specific descriptor, or a structural prefix.  This fixes the performance regression reported in bug 1073836 comment 4.
Attachment #8507428 - Flags: review?(nmatsakis)
The fact that TypedProto points at TypeDescr is intended as a temporary thing, I just never landed the patches that completely sever the two.
See bug 1022356 for more details.
Well, that bug hasn't landed, and when that functionality does get in, we'll still need a way to get from a TypeObject* to the corresponding type descriptor, unless we want to remove unsized arrays entirely.  So can you either land your patch or review mine?  When typed object performance is acceptable we can make the necessary changes to get things in line with the current spec.
Attachment #8507428 - Flags: review?(nmatsakis) → review+
https://hg.mozilla.org/mozilla-central/rev/a9cab8a15d2b
Assignee: nobody → bhackett1024
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla36
Depends on: 1096026
Depends on: 1103273
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: