Closed Bug 779860 Opened 10 years ago Closed 10 years ago
Monkey: OSR can cause lots of stack moves
If we enter an inner loop using OSR, the outer loop may contain a huge movegroup. This happens when the input to an OSR-phi is live after the phi itself, so that regalloc allocates another stack slot or register for the phi. The attached micro-benchmark demonstrates the problem, I get these numbers: JM : 1780 ms Ion : 3600 ms If I remove all the a* variables from the return statement, the problem goes away (fewer overlapping live ranges so the phi can reuse the input allocation) and Ion gets 1900 ms (1300 ms with range analysis on). I'm not sure how much fixing this will help SS-fannkuch though.
10 years ago
Bug 780973 should have fixed the most problematic cases like the attached micro-benchmark. Let's reopen or file a new bug if that's not sufficient.
Status: ASSIGNED → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Resolution: FIXED → DUPLICATE
Duplicate of bug: 780973
You need to log in before you can comment on or make changes to this bug.