Closed Bug 945437 Opened 6 years ago Closed 6 years ago

Fix Compile usecount check

Categories

(Core :: JavaScript Engine: JIT, defect)

defect
Not set

Tracking

()

RESOLVED FIXED
mozilla28

People

(Reporter: jandem, Assigned: jandem)

References

Details

(Whiteboard: [qa-])

Attachments

(1 file)

Attached patch PatchSplinter Review
We should call UsesBeforeIonRecompile() instead of using js_IonOptions.usesBeforeCompile. Problem with the latter is that we can Ion-compile large scripts too eagerly when called from the interpreter/VM.

This seems to win 1000 points or so on Octane-mandreel. It fixes an issue where a pretty big Ion script is immediately invalidated when it runs due to incomplete type information for the non-OSR entry point. Hannes, I think this also affects bug 939614.
Attachment #8341271 - Flags: review?(hv1989)
Comment on attachment 8341271 [details] [diff] [review]
Patch

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

I already wondered why we used different tests for checking IonCompile is ready to compile or when baseline decides when to compile. But at the time I reasoned this wouldn't occur. But indeed a very cold script (usecount < 10) calling such a problem case script will not use the right usecount.

Good find!
Attachment #8341271 - Flags: review?(hv1989) → review+
https://hg.mozilla.org/mozilla-central/rev/19bfb5a02699
Status: ASSIGNED → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla28
Whiteboard: [qa-]
You need to log in before you can comment on or make changes to this bug.