Bug 64574 - DFG JIT does not optimize Branch as well as it could
Summary: DFG JIT does not optimize Branch as well as it could
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: JavaScriptCore (show other bugs)
Version: 528+ (Nightly build)
Hardware: All All
: P2 Normal
Assignee: Nobody
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-07-14 17:11 PDT by Filip Pizlo
Modified: 2011-07-14 19:06 PDT (History)
3 users (show)

See Also:


Attachments
the patch (6.53 KB, patch)
2011-07-14 17:15 PDT, Filip Pizlo
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Filip Pizlo 2011-07-14 17:11:42 PDT
The DFG speculative JIT will terminate speculation if a Branch did not encounter an integer or a boolean.  Terminating speculation in this case is not profitable, since proving that the Branch encountered either integer or boolean does not provide any useful data flow information (at least not in the current DFG JIT architecture).  The non-speculative JIT always performs slow calls for Branches.  Both JITs should use the same implementation of Branch, which does no speculation, and only performs a slow call if necessary.
Comment 1 Filip Pizlo 2011-07-14 17:15:40 PDT
Created attachment 100901 [details]
the patch
Comment 2 WebKit Review Bot 2011-07-14 19:06:23 PDT
Comment on attachment 100901 [details]
the patch

Clearing flags on attachment: 100901

Committed r91041: <http://trac.webkit.org/changeset/91041>
Comment 3 WebKit Review Bot 2011-07-14 19:06:27 PDT
All reviewed patches have been landed.  Closing bug.