IonMonkey: Use SSA for MBoundsCheck

RESOLVED FIXED

Status

()

Core
JavaScript Engine
RESOLVED FIXED
5 years ago
5 years ago

People

(Reporter: jandem, Assigned: jandem)

Tracking

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(1 attachment)

(Assignee)

Description

5 years ago
We should change MBoundsCheck to redefine the index, so that we can use SSA to track its dependencies.

Atm LICM/GVN guarantee a load/store is never moved before its bounds check so there's no problem, but this will change with bug 722708 (and it will help range analysis).
(Assignee)

Comment 1

5 years ago
Created attachment 639005 [details] [diff] [review]
Patch

As discussed before, the main difficulty here was factoring out the redundant bounds check elimination from GVN into a new pass. The algorithm is similar to GVN (use a hash map to find dominating bounds checks) but I think it's nice to have it as a separate pass.
Attachment #639005 - Flags: review?(dvander)
Attachment #639005 - Flags: review?(dvander) → review+
(Assignee)

Comment 2

5 years ago
https://hg.mozilla.org/projects/ionmonkey/rev/950259d801c4
Status: ASSIGNED → RESOLVED
Last Resolved: 5 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.