Bug 147371

Summary: DFG::PutStackSinkingPhase should be more aggressive about its "no GetStack until put" rule
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   
Attachments:
Description Flags
the patch mark.lam: review+

Description Filip Pizlo 2015-07-28 13:38:40 PDT
PutStackSinkingPhase assumes that you won't issue a GetStack until you've already done a PutStack or some other store to that stack location (for example via ForwardVarargs or because it's an argument).  One of the reasons why it currently doesn't enforce this because it's sloppy about using ConflictingFlush, the current signal that the stack slot is dirty.  We should fix both issues.
Comment 1 Filip Pizlo 2015-07-28 13:40:33 PDT
Created attachment 257676 [details]
the patch
Comment 2 Mark Lam 2015-07-28 13:48:19 PDT
Comment on attachment 257676 [details]
the patch

r=me
Comment 3 Filip Pizlo 2015-07-28 13:51:59 PDT
Landed in http://trac.webkit.org/changeset/187510