Infer constant properties for properties which haven't had their type information instantiated

RESOLVED FIXED in Firefox 34

Status

()

defect
RESOLVED FIXED
5 years ago
5 years ago

People

(Reporter: bhackett, Assigned: bhackett)

Tracking

unspecified
mozilla35
x86
macOS
Points:
---
Dependency tree / graph

Firefox Tracking Flags

(firefox34 fixed, firefox35 fixed, b2g-v2.1 fixed, b2g-v2.2 fixed)

Details

Attachments

(1 attachment)

Assignee

Description

5 years ago
Posted patch patchSplinter Review
Type information for singleton object properties is lazily instantiated, and currently if we access a property during IonBuilder which hasn't been instantiated we won't treat it as a constant property.  This led to a regression in sunspider-date-format-xparb, where an inlined function which never executed in baseline was not optimized by IonBuilder, then the property was instantiated, the function recompiled and optimized, changing type information and causing the earlier compilation to be invalidated.  The attached patch reworks this stuff so that IonBuilder can inline constant properties even when those properties haven't been instantiated yet.
Attachment #8485031 - Flags: review?(jdemooij)
Attachment #8485031 - Flags: review?(jdemooij) → review+
https://hg.mozilla.org/mozilla-central/rev/91c1baf5b733
Assignee: nobody → bhackett1024
Status: NEW → RESOLVED
Last Resolved: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla35
Flags: needinfo?(bhackett1024)
Assignee

Comment 6

5 years ago
Comment on attachment 8485031 [details] [diff] [review]
patch

Approval Request Comment
[Feature/regressing bug #]: bug 894596
[User impact if declined]: see bug 1060276
[Describe test coverage new/current, TBPL]: none
[Risks and why]: none
Attachment #8485031 - Flags: approval-mozilla-aurora?
Flags: needinfo?(bhackett1024)
Comment on attachment 8485031 [details] [diff] [review]
patch

Approved for Aurora.
Attachment #8485031 - Flags: approval-mozilla-aurora? → approval-mozilla-aurora+
You need to log in before you can comment on or make changes to this bug.