Closed Bug 716753 Opened 13 years ago Closed 13 years ago

IonMonkey: Stack allocation bugs in GRA

Categories

(Core :: JavaScript Engine, defect)

defect
Not set
normal

Tracking

()

RESOLVED FIXED

People

(Reporter: dvander, Assigned: dvander)

References

Details

Attachments

(1 file)

Two more bugs in GRA stack allocation: (1) uses in snapshots are not held live across loops (2) we can accidentally free half of a nunbox as a normal stack slot (they must be freed as a whole)
Attached patch fixes (deleted) — Splinter Review
Attachment #587218 - Flags: review?(sstangl)
Comment on attachment 587218 [details] [diff] [review] fixes Review of attachment 587218 [details] [diff] [review]: ----------------------------------------------------------------- ::: js/src/ion/GreedyAllocator.cpp @@ +793,5 @@ > + if (!a->isUse()) > + continue; > + VirtualRegister *vr = getVirtualRegister(a->toUse()); > + if (vr->def->virtualRegister() < lowerBound || vr->def->virtualRegister() > upperBound) > + allocateStack(vr); Duplicates code above, which isn't fashionable. void findLoopCarriedUses(LAllocation *, uint32, uint32)?
Attachment #587218 - 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: