Closed Bug 716149 Opened 13 years ago Closed 13 years ago

IonMonkey: Assertion failure: *from != *to in GRA

Categories

(Core :: JavaScript Engine, defect)

defect
Not set
normal

Tracking

()

RESOLVED FIXED

People

(Reporter: dvander, Assigned: dvander)

References

Details

Attachments

(1 file)

Fails about 30 tests with --ion-regalloc=greedy
Attached patch fix (deleted) — Splinter Review
There are two problems: (1) We didn't look at phi inputs when keeping things outside loops alive. (2) Phis could get the same stack slot as their inputs. This is actually okay, but I feel better disallowing it than hacking around the assert.
Attachment #586627 - Flags: review?(sstangl)
Comment on attachment 586627 [details] [diff] [review] fix Review of attachment 586627 [details] [diff] [review]: ----------------------------------------------------------------- ::: js/src/ion/GreedyAllocator.cpp @@ +804,5 @@ > > + for (LInstructionIterator i = block->begin(); i != block->end(); i++) > + findLoopCarriedUses(*i, lowerBound, upperBound); > + for (size_t i = 0; i < block->numPhis(); i++) > + findLoopCarriedUses(block->getPhi(i), lowerBound, upperBound); This is elegant.
Attachment #586627 - Flags: review?(sstangl) → review+
Status: ASSIGNED → RESOLVED
Closed: 13 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: