Add a shell flag to disable TI
Categories
(Core :: JavaScript Engine, task, P2)
Tracking
()
Tracking | Status | |
---|---|---|
firefox75 | --- | fixed |
People
(Reporter: jandem, Assigned: jandem)
References
(Blocks 1 open bug)
Details
Attachments
(4 files)
Assignee | ||
Comment 1•5 years ago
|
||
If TI is disabled we don't allocate any StackTypeSets in JitScript and we don't
allocate/use type monitor ICs.
Assignee | ||
Comment 2•5 years ago
|
||
Unlike stack type monitoring, heap TI is much harder to disable completely
because it's intertwined with a lot of other things. This patch does the
following:
-
Don't track type information for any ObjectGroups (in ObjectGroupRealm::makeGroup).
-
Turn off heuristics for singletons, allocation-site groups, function groups.
-
Turn off type update ICs in Baseline.
-
Add early returns to some hot functions.
Depends on D63140
Assignee | ||
Comment 4•5 years ago
|
||
For now this is Nightly-only so that IsTypeInferenceEnabled() shouldn't
impact performance for our non-Nightly users.
Depends on D63143
Updated•5 years ago
|
Pushed by jdemooij@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/d55c128f503c part 1 - Add IsTypeInferenceEnabled and use it for type monitoring code. r=iain https://hg.mozilla.org/integration/autoland/rev/444ff49a36c4 part 2 - Use IsTypeInferenceEnabled to disable parts of heap TI. r=iain https://hg.mozilla.org/integration/autoland/rev/b337cc42de46 part 3 - Add isTypeInferenceEnabled() function, use it to disable some jit-tests. r=iain https://hg.mozilla.org/integration/autoland/rev/011f24c76f1f part 4 - Add a --no-ti shell flag. r=iain
Comment 6•5 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/d55c128f503c
https://hg.mozilla.org/mozilla-central/rev/444ff49a36c4
https://hg.mozilla.org/mozilla-central/rev/b337cc42de46
https://hg.mozilla.org/mozilla-central/rev/011f24c76f1f
Description
•