All users were logged out of Bugzilla on October 13th, 2018

Change deoptimization in MonitorAssign to only take effect once we have enough properties

RESOLVED FIXED in mozilla25

Status

()

RESOLVED FIXED
5 years ago
5 years ago

People

(Reporter: bzbarsky, Assigned: bzbarsky)

Tracking

unspecified
mozilla25
x86
Mac OS X
Points:
---
Dependency tree / graph
Bug Flags:
in-testsuite ?

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(1 attachment)

We're trying to guard against hashtable-like things, but since we deoptimize other things that have the same proto (at least for DOM objects) it's better if we're not too eager about it.
(Assignee)

Comment 1

5 years ago
Created attachment 775752 [details] [diff] [review]
Don't deoptimize typeobjects in TypeScript::MonitorAssign if they only have a few properties.
Attachment #775752 - Flags: review?(bhackett1024)
Comment on attachment 775752 [details] [diff] [review]
Don't deoptimize typeobjects in TypeScript::MonitorAssign if they only have a few properties.

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

::: js/src/jsinferinlines.h
@@ +966,5 @@
>          uint32_t i;
>          if (js_IdIsIndex(id, &i))
>              return;
> +        // But if we don't have too many properties yet, don't do anything.  8
> +        // is a fairly random "not too many" value picked for no good reason.

Newline above this comment.  Maybe remove the second sentence, 8 was picked so that the deoptimization is more likely to kick in only after object initialization.
Attachment #775752 - Flags: review?(bhackett1024) → review+
(Assignee)

Comment 3

5 years ago
https://hg.mozilla.org/integration/mozilla-inbound/rev/fc6ed6c80500
Flags: in-testsuite?
Whiteboard: [need review]
Target Milestone: --- → mozilla25
(Assignee)

Updated

5 years ago
Depends on: 894447
(Assignee)

Updated

5 years ago
Depends on: 894463
https://hg.mozilla.org/mozilla-central/rev/fc6ed6c80500
Status: NEW → RESOLVED
Last Resolved: 5 years ago
Resolution: --- → FIXED
(Assignee)

Updated

5 years ago
Depends on: 894921
You need to log in before you can comment on or make changes to this bug.