Bug 127848 - LICM should gracefully handle unprofiled code
Summary: LICM should gracefully handle unprofiled code
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: JavaScriptCore (show other bugs)
Version: 528+ (Nightly build)
Hardware: All All
: P2 Normal
Assignee: Filip Pizlo
URL:
Keywords:
Depends on:
Blocks: 112840
  Show dependency treegraph
 
Reported: 2014-01-29 11:36 PST by Filip Pizlo
Modified: 2014-02-11 09:49 PST (History)
9 users (show)

See Also:


Attachments
the patch (4.52 KB, patch)
2014-02-10 23:45 PST, Filip Pizlo
mhahnenberg: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
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