Bug 145205

Summary: Add some assertions about the CFG in the loop pre-header creation phase
Product: WebKit Reporter: Filip Pizlo <fpizlo>
Component: JavaScriptCoreAssignee: Filip Pizlo <fpizlo>
Status: RESOLVED FIXED    
Severity: Normal CC: barraclough, basile_clement, benjamin, ggaren, mark.lam, mhahnenb, mmirman, msaboff, nrotem, oliver, saam, sam
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: All   
OS: All   
Bug Depends on:    
Bug Blocks: 145204    
Attachments:
Description Flags
the patch ggaren: review+

Description Filip Pizlo 2015-05-19 22:51:24 PDT
If any of these properties turned out to be false, it would just lead to a bizarre failure elsewhere (like the LICM phase), so we might as well assert these things here.
Comment 1 Filip Pizlo 2015-05-19 22:55:55 PDT
Created attachment 253429 [details]
the patch
Comment 2 Geoffrey Garen 2015-05-20 11:10:30 PDT
Comment on attachment 253429 [details]
the patch

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

r=me

> Source/JavaScriptCore/dfg/DFGLICMPhase.cpp:133
> +            // We should validate the pre-header. If we places forExit origins on nodes only if

places => placed

> Source/JavaScriptCore/dfg/DFGLICMPhase.cpp:135
> +            // has a forExit. We should disable hoisting to pre-headers that don't validate.

has => had
Comment 3 Filip Pizlo 2015-05-20 11:41:07 PDT
Landed in http://trac.webkit.org/changeset/184646