Last Comment Bug 705998 - IonMonkey: ion/bug674694.js hangs with greedy allocator
: IonMonkey: ion/bug674694.js hangs with greedy allocator
Status: RESOLVED FIXED
:
Product: Core
Classification: Components
Component: JavaScript Engine (show other bugs)
: unspecified
: All All
: -- normal (vote)
: ---
Assigned To: Jan de Mooij [:jandem]
:
Mentors:
Depends on:
Blocks: 677337
  Show dependency treegraph
 
Reported: 2011-11-28 23:31 PST by Jan de Mooij [:jandem]
Modified: 2011-11-29 17:37 PST (History)
1 user (show)
See Also:
Crash Signature:
(edit)
QA Whiteboard:
Iteration: ---
Points: ---
Has Regression Range: ---
Has STR: ---


Attachments
Fix (2.01 KB, patch)
2011-11-29 02:02 PST, Jan de Mooij [:jandem]
dvander: review+
Details | Diff | Review
FindNaturalLoops() must ignore the OSR block. (849 bytes, patch)
2011-11-29 17:01 PST, Sean Stangl [:sstangl]
dvander: review+
Details | Diff | Review

Description Jan de Mooij [:jandem] 2011-11-28 23:31:12 PST
Seems to be a regression from my block reordering patch (bug 699415). I'll investigate.
Comment 1 Jan de Mooij [:jandem] 2011-11-28 23:41:26 PST
Reduced:

function f0(p0) {
    do {
    } while (p0);

    while (p0) {
        do {
        } while (p0);
    }
}
f0(0);
Comment 2 Jan de Mooij [:jandem] 2011-11-29 02:02:20 PST
Created attachment 577523 [details] [diff] [review]
Fix

The block ordering change broke FindNaturalLoops, it has to see inner backedges before outer backedges.
Comment 3 Jan de Mooij [:jandem] 2011-11-29 02:51:38 PST
Thanks for the quick review.

http://hg.mozilla.org/projects/ionmonkey/rev/10b888d2474a
Comment 4 Sean Stangl [:sstangl] 2011-11-29 17:01:27 PST
Created attachment 577807 [details] [diff] [review]
FindNaturalLoops() must ignore the OSR block.

The issue is not entirely fixed: the assert introduced by the above patch trips basic/innerLoopIntOuterDouble.js with --ion --ion-regalloc=greedy.

Unfortunately, the assert must know about the osrBlock's ID.
Comment 5 Sean Stangl [:sstangl] 2011-11-29 17:37:50 PST
http://hg.mozilla.org/projects/ionmonkey/rev/485dcdd9dabd

Note You need to log in before you can comment on or make changes to this bug.