Bug 158631

Summary: The backend should be happy to compile Unreachable even if AI didn't prove it to be unreachable
Product: WebKit Reporter: Filip Pizlo <fpizlo>
Component: JavaScriptCoreAssignee: Filip Pizlo <fpizlo>
Status: RESOLVED FIXED    
Severity: Normal CC: barraclough, benjamin, commit-queue, ddkilzer, ggaren, keith_miller, mark.lam, mhahnenb, msaboff, oliver, saam, sam
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: All   
OS: All   
Bug Depends on: 157379    
Bug Blocks:    
Attachments:
Description Flags
the patch keith_miller: review+

Description Filip Pizlo 2016-06-10 12:18:53 PDT
It's possible that due to concurrency, we invalidate the compilation after the last run of the CFA phase but before the backend. Then, when AI runs during the backend, it might think that some code that was previously thought to be Unreachable is now reachable.  We shouldn't crash when this happens.
Comment 1 Filip Pizlo 2016-06-10 12:31:37 PDT
Created attachment 281032 [details]
the patch
Comment 2 Keith Miller 2016-06-10 12:52:03 PDT
Comment on attachment 281032 [details]
the patch

r=me.
Comment 3 Filip Pizlo 2016-06-10 12:56:04 PDT
Landed in http://trac.webkit.org/changeset/201936
Comment 4 David Kilzer (:ddkilzer) 2016-06-10 13:56:23 PDT
<rdar://problem/26540392>