Bug 127848

Summary: LICM should gracefully handle unprofiled code
Product: WebKit Reporter: Filip Pizlo <fpizlo>
Component: JavaScriptCoreAssignee: Filip Pizlo <fpizlo>
Status: RESOLVED FIXED    
Severity: Normal CC: barraclough, ggaren, mark.lam, mhahnenberg, mmirman, msaboff, nrotem, oliver, sam
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: All   
OS: All   
Bug Depends on:    
Bug Blocks: 112840    
Attachments:
Description Flags
the patch mhahnenberg: review+

Description Filip Pizlo 2014-01-29 11:36:33 PST
Consider:

loop {
    if (never happens)
        o.f++; // this thing
}

This thing will look like a clobber-the-world side-effect.  But, it's also an exit site.  I don't think that the IR makes clear that that basic block doesn't belong in the loop.  We should investigate this more.
Comment 1 Filip Pizlo 2014-02-10 23:45:42 PST
Created attachment 223818 [details]
the patch
Comment 2 Mark Hahnenberg 2014-02-11 07:06:33 PST
Comment on attachment 223818 [details]
the patch

r=me
Comment 3 Filip Pizlo 2014-02-11 09:49:22 PST
Landed in http://trac.webkit.org/changeset/163879