Closed Bug 1511447 Opened 6 years ago Closed 5 years ago

Fix truncated division on ARM64

Categories

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

ARM64
Unspecified
defect

Tracking

()

RESOLVED FIXED
mozilla66
Tracking Status
firefox66 --- fixed

People

(Reporter: sstangl, Assigned: sstangl)

References

Details

Attachments

(1 file)

It turns out that for a confusing reason, the canTruncateInfinities() case of visitDivI() is required for correctness, you can't just bail.

The reason is that:

1. mir->fallible() is defined as !mir->isTruncated().
2. canTruncateInfinities() is defined as mir->isTruncated().

So in the truncated place, you can't bailout, as there is no snapshot.

Fixes ion/divmodself.js and probably a bunch of other tests.
Attachment #9029011 - Flags: review?(nicolas.b.pierron)
Attachment #9029011 - Flags: review?(nicolas.b.pierron) → review+
Keywords: checkin-needed
https://hg.mozilla.org/mozilla-central/rev/4a45d2854c92
Status: NEW → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla66
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: