Bug 136520

Summary: Beef up the DFG's CFG analyses to include iterated dominance frontiers and more user-friendly BlockSets
Product: WebKit Reporter: Filip Pizlo <fpizlo>
Component: JavaScriptCoreAssignee: Filip Pizlo <fpizlo>
Status: RESOLVED FIXED    
Severity: Normal CC: barraclough, benjamin, cmarcelo, commit-queue, ggaren, gyuyoung.kim, kling, mark.lam, mhahnenb, mmirman, msaboff, nrotem, oliver, rakuco, ryuan.choi, sam, sergio
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: All   
OS: All   
Bug Depends on:    
Bug Blocks: 136331    
Attachments:
Description Flags
the patch
none
the patch ggaren: review+

Description Filip Pizlo 2014-09-03 19:40:08 PDT
Patch forthcoming.
Comment 1 Filip Pizlo 2014-09-03 19:43:39 PDT
Created attachment 237606 [details]
the patch
Comment 2 Filip Pizlo 2014-09-03 19:45:05 PDT
Comment on attachment 237606 [details]
the patch

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

> Source/JavaScriptCore/dfg/DFGDominators.h:105
> +    // Visits all blocks in the dominance frontier of the given block. This often
> +    // visits the same block multiple times, so it's up to the callback to prune
> +    // accordingly.

This comment is wrong, I've removed it.
Comment 3 WebKit Commit Bot 2014-09-03 19:46:22 PDT
Attachment 237606 [details] did not pass style-queue:


ERROR: Source/JavaScriptCore/dfg/DFGDominators.h:113:  Place brace on its own line for function definitions.  [whitespace/braces] [4]
ERROR: Source/JavaScriptCore/dfg/DFGDominators.h:148:  When wrapping a line, only indent 4 spaces.  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/dfg/DFGDominators.h:164:  When wrapping a line, only indent 4 spaces.  [whitespace/indent] [3]
Total errors found: 3 in 16 files


If any of these errors are false positives, please file a bug against check-webkit-style.
Comment 4 Filip Pizlo 2014-09-03 20:20:48 PDT
Created attachment 237608 [details]
the patch
Comment 5 WebKit Commit Bot 2014-09-03 20:22:11 PDT
Attachment 237608 [details] did not pass style-queue:


ERROR: Source/JavaScriptCore/dfg/DFGDominators.h:110:  Place brace on its own line for function definitions.  [whitespace/braces] [4]
ERROR: Source/JavaScriptCore/dfg/DFGDominators.h:154:  When wrapping a line, only indent 4 spaces.  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/dfg/DFGDominators.h:170:  When wrapping a line, only indent 4 spaces.  [whitespace/indent] [3]
Total errors found: 3 in 16 files


If any of these errors are false positives, please file a bug against check-webkit-style.
Comment 6 Geoffrey Garen 2014-09-04 11:23:05 PDT
Comment on attachment 237608 [details]
the patch

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

r=me

> Source/JavaScriptCore/dfg/DFGDominators.h:154
> +                for (unsigned successorIndex = block->numSuccessors(); successorIndex--;) {

Over-indented.

> Source/JavaScriptCore/dfg/DFGDominators.h:170
> +                    if (functor(otherBlock))

Ditto.

> Source/WTF/wtf/BitVector.cpp:225
> +    return false;

"return true" please.
Comment 7 Filip Pizlo 2014-09-04 14:09:23 PDT
Landed in http://trac.webkit.org/changeset/173279