Closed Bug 765127 Opened 12 years ago Closed 10 years ago

IonMonkey: use range analysis to eliminate dead code

Categories

(Core :: JavaScript Engine, defect)

defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla33

People

(Reporter: rpearl, Assigned: sunfish)

References

(Blocks 1 open bug)

Details

(Whiteboard: [ion:t])

Attachments

(1 file)

Follow up to Bug 699883. If the range associated with a value ever becomes empty, currently we just discard that information completely and make it an infinite range. But, this is just false! Instead, we have proven the block containing that definition dead, and should therefore eliminate the dead block. Control flow operations can also be proven redundant, further simplifying control flow and eliminating untaken branches.
Depends on: 699883
The feature was implemented as part of bug 765119. Attached is a patch which updates the comment accordingly. It's in range analysis, but it's just updating a comment, so perhaps it only needs one reviewer. While range analysis does eliminate the unreachable block now, it doesn't quite go all the way and eliminate the toplevel branch. I filed bug 1040814 to track this.
Assignee: general → sunfish
Attachment #8458720 - Flags: review?(nicolas.b.pierron)
Attachment #8458720 - Flags: review?(nicolas.b.pierron) → review+
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla33
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: