Bug 133935 - [ftlopt] DFG OSR entry should have a crystal-clear story for when it's safe to enter at a block with a set of values
Summary: [ftlopt] DFG OSR entry should have a crystal-clear story for when it's safe t...
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: 133918
  Show dependency treegraph
 
Reported: 2014-06-15 22:06 PDT by Filip Pizlo
Modified: 2014-06-16 11:06 PDT (History)
7 users (show)

See Also:


Attachments
the patch (15.63 KB, patch)
2014-06-15 22:09 PDT, Filip Pizlo
oliver: 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-06-15 22:06:42 PDT
Currently we record the abstract values at the head of a block at the time that the backend runs.  This causes weirdness if a subsequent run of the CFA proves less things (or different things) than a past run, and we had already performed optimizations based on the past run.

The solution is to save the intersection of all proofs.

This makes constant folding a lot easier to reason about.
Comment 1 Filip Pizlo 2014-06-15 22:09:19 PDT
Created attachment 233151 [details]
the patch
Comment 2 Filip Pizlo 2014-06-16 11:06:51 PDT
Landed in http://trac.webkit.org/changeset/170016