Optimize Math.round in CacheIR and Warp
Categories
(Core :: JavaScript Engine: JIT, task, P2)
Tracking
()
Tracking | Status | |
---|---|---|
firefox78 | --- | fixed |
People
(Reporter: jandem, Assigned: jandem)
References
(Blocks 1 open bug)
Details
Attachments
(5 files)
Based on the uses in Kraken, it seems we need to support:
- number => int32
- number => double (easy after bug 1638798)
Ion has optimized codegen for the first one, it would be nice to move that to the MacroAssembler and reuse it.
Assignee | ||
Comment 1•5 years ago
|
||
Assignee | ||
Comment 2•5 years ago
|
||
Depends on D75955
Assignee | ||
Comment 3•5 years ago
|
||
The reason for doing this is to ensure these float registers are available for the
Math instructions (Ion doesn't have a Call IC yet but that might change).
This found an actual bug with StoreTypedObjectScalarProperty, fixed by adding
FloatReg0 also as temp register for SetProp ICs (in addition to SetElem ICs).
Depends on D75957
Assignee | ||
Comment 4•5 years ago
|
||
Depends on D75958
Assignee | ||
Comment 5•5 years ago
|
||
Depends on D75959
Updated•5 years ago
|
Comment 7•5 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/180e48bc3c41
https://hg.mozilla.org/mozilla-central/rev/bc823c0fd292
https://hg.mozilla.org/mozilla-central/rev/c8cc2b355422
https://hg.mozilla.org/mozilla-central/rev/5aff4aae9701
https://hg.mozilla.org/mozilla-central/rev/b939cecf3fca
Description
•