Bug 148245 - [JSC] Get rid of DFG's MergeMode
Summary: [JSC] Get rid of DFG's MergeMode
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: New Bugs (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Benjamin Poulain
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-08-20 14:16 PDT by Benjamin Poulain
Modified: 2015-08-28 19:04 PDT (History)
0 users

See Also:


Attachments
Patch (13.13 KB, patch)
2015-08-20 14:17 PDT, Benjamin Poulain
no flags Details | Formatted Diff | Diff
Patch (13.70 KB, patch)
2015-08-20 17:38 PDT, Benjamin Poulain
mark.lam: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Benjamin Poulain 2015-08-20 14:16:49 PDT
[JSC] Get rid of DFG's MergeMode
Comment 1 Benjamin Poulain 2015-08-20 14:17:24 PDT
Created attachment 259493 [details]
Patch
Comment 2 Filip Pizlo 2015-08-20 16:39:00 PDT
Comment on attachment 259493 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=259493&action=review

> Source/JavaScriptCore/dfg/DFGInPlaceAbstractState.h:86
>      // the block's data structures. There are three return modes, depending
>      // on the value of mergeMode:
>      //
> -    // DontMerge:
> -    //    Always returns false.
> -    //
> -    // MergeToTail:
> -    //    Returns true if the state of the block at the tail was changed.
> -    //    This means that you must call mergeToSuccessors(), and if that
> -    //    returns true, then you must revisit (at least) the successor
> -    //    blocks. False will always be returned if the block is terminal
> -    //    (i.e. ends in Throw or Return, or has a ForceOSRExit inside it).
> -    //
> -    // MergeToSuccessors:
>      //    Returns true if the state of the block at the tail was changed,
>      //    and, if the state at the heads of successors was changed.
>      //    A true return means that you must revisit (at least) the successor
>      //    blocks. This also sets cfaShouldRevisit to true for basic blocks
>      //    that must be visited next.
> -    bool endBasicBlock(MergeMode);
> +    bool endBasicBlock();

You should probably update this comment a bit!
Comment 3 Benjamin Poulain 2015-08-20 17:38:45 PDT
Created attachment 259538 [details]
Patch
Comment 4 Mark Lam 2015-08-28 09:38:37 PDT
Comment on attachment 259538 [details]
Patch

r=me.

Please also remove the entries for DFGMergeMode.h from JavaScriptCore.vcxproj and JavaScriptCore.vcxproj.filters in Source/JavaScriptCore/JavaScriptCore.vcxproj.
Comment 5 Benjamin Poulain 2015-08-28 19:04:52 PDT
Committed r189138: <http://trac.webkit.org/changeset/189138>