Closed Bug 1641789 Opened 5 years ago Closed 5 years ago

Make some CacheIR code work with numbers instead of just doubles

Categories

(Core :: JavaScript Engine: JIT, task, P2)

task

Tracking

()

RESOLVED FIXED
mozilla78
Tracking Status
firefox78 --- fixed

People

(Reporter: jandem, Assigned: jandem)

References

(Blocks 1 open bug)

Details

Attachments

(3 files)

Once we see a double it's better to add a stub that still works for int32 too. That's what we do for most operations and this works well with Warp, but the stub for binary bitwise operations only accepted doubles, causing perf issues for Warp.

Use GuardIsNumber for binary bitwise operations so that the stub works for int32
too. The IC code may be slightly less efficient now for int32 values because they
are converted to double but this is consistent with other code and helps Warp a lot.

Severity: normal → N/A
Priority: -- → P2
Pushed by jdemooij@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/102cb2082b8a part 1 - Change TruncateDoubleToUInt32 input from ValId to NumberId. r=evilpie https://hg.mozilla.org/integration/autoland/rev/b1cdd829acc9 part 2 - Change LoadDoubleTruthyResult input from ValId to NumberId. r=evilpie https://hg.mozilla.org/integration/autoland/rev/61f9f26e554c part 3 - Rename GuardType to GuardNonDoubleType and remove support for doubles. r=evilpie
Status: ASSIGNED → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla78
Regressions: 1643888
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: