<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>145205</bug_id>
          
          <creation_ts>2015-05-19 22:51:24 -0700</creation_ts>
          <short_desc>Add some assertions about the CFG in the loop pre-header creation phase</short_desc>
          <delta_ts>2015-05-20 11:41:07 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>JavaScriptCore</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>145204</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Filip Pizlo">fpizlo</reporter>
          <assigned_to name="Filip Pizlo">fpizlo</assigned_to>
          <cc>barraclough</cc>
    
    <cc>basile_clement</cc>
    
    <cc>benjamin</cc>
    
    <cc>ggaren</cc>
    
    <cc>mark.lam</cc>
    
    <cc>mhahnenb</cc>
    
    <cc>mmirman</cc>
    
    <cc>msaboff</cc>
    
    <cc>nrotem</cc>
    
    <cc>oliver</cc>
    
    <cc>saam</cc>
    
    <cc>sam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1096182</commentid>
    <comment_count>0</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2015-05-19 22:51:24 -0700</bug_when>
    <thetext>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.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1096185</commentid>
    <comment_count>1</comment_count>
      <attachid>253429</attachid>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2015-05-19 22:55:55 -0700</bug_when>
    <thetext>Created attachment 253429
the patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1096293</commentid>
    <comment_count>2</comment_count>
      <attachid>253429</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2015-05-20 11:10:30 -0700</bug_when>
    <thetext>Comment on attachment 253429
the patch

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

r=me

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

places =&gt; placed

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

has =&gt; had</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1096306</commentid>
    <comment_count>3</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2015-05-20 11:41:07 -0700</bug_when>
    <thetext>Landed in http://trac.webkit.org/changeset/184646</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>253429</attachid>
            <date>2015-05-19 22:55:55 -0700</date>
            <delta_ts>2015-05-20 11:10:30 -0700</delta_ts>
            <desc>the patch</desc>
            <filename>blah.patch</filename>
            <type>text/plain</type>
            <size>4074</size>
            <attacher name="Filip Pizlo">fpizlo</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMTg0NjE2KQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE3IEBA
CisyMDE1LTA1LTE5ICBGaWxpcCBQaXpsbyAgPGZwaXpsb0BhcHBsZS5jb20+CisKKyAgICAgICAg
QWRkIHNvbWUgYXNzZXJ0aW9ucyBhYm91dCB0aGUgQ0ZHIGluIHRoZSBsb29wIHByZS1oZWFkZXIg
Y3JlYXRpb24gcGhhc2UKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTE0NTIwNQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorICAg
ICAgICAKKyAgICAgICAgKiBkZmcvREZHQnl0ZUNvZGVQYXJzZXIuY3BwOgorICAgICAgICAoSlND
OjpERkc6OkJ5dGVDb2RlUGFyc2VyOjpjdXJyZW50Tm9kZU9yaWdpbik6IEFkZCBhIEZJWE1FLgor
ICAgICAgICAqIGRmZy9ERkdMSUNNUGhhc2UuY3BwOgorICAgICAgICAoSlNDOjpERkc6OkxJQ01Q
aGFzZTo6cnVuKTogQWRkIGEgRklYTUUuCisgICAgICAgICogZGZnL0RGR0xvb3BQcmVIZWFkZXJD
cmVhdGlvblBoYXNlLmNwcDoKKyAgICAgICAgKEpTQzo6REZHOjpMb29wUHJlSGVhZGVyQ3JlYXRp
b25QaGFzZTo6cnVuKTogQWRkIHRoZSBhc3NlcnRpb25zLgorCiAyMDE1LTA1LTE5ICBBbmRyZWFz
IEtsaW5nICA8YWtsaW5nQGFwcGxlLmNvbT4KIAogICAgICAgICBbSlNDXSBTcGVlZCB1cCBVUkwg
ZW5jb2RlL2RlY29kZSBieSB1c2luZyBiaXRtYXBzIGluc3RlYWQgb2Ygc3RyY2hyKCkuCkluZGV4
OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0J5dGVDb2RlUGFyc2VyLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0J5dGVDb2RlUGFyc2VyLmNwcAko
cmV2aXNpb24gMTg0NjE0KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdCeXRlQ29k
ZVBhcnNlci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTYwNyw2ICs2MDcsOCBAQCBwcml2YXRlOgog
CiAgICAgTm9kZU9yaWdpbiBjdXJyZW50Tm9kZU9yaWdpbigpCiAgICAgeworICAgICAgICAvLyBG
SVhNRTogV2Ugc2hvdWxkIHNldCB0aGUgZm9yRXhpdCBvcmlnaW4gb25seSBvbiB0aG9zZSBub2Rl
cyB0aGF0IGNhbiBleGl0LgorICAgICAgICAvLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTQ1MjA0CiAgICAgICAgIGlmIChtX2N1cnJlbnRTZW1hbnRpY09yaWdpbi5p
c1NldCgpKQogICAgICAgICAgICAgcmV0dXJuIE5vZGVPcmlnaW4obV9jdXJyZW50U2VtYW50aWNP
cmlnaW4sIGN1cnJlbnRDb2RlT3JpZ2luKCkpOwogICAgICAgICByZXR1cm4gTm9kZU9yaWdpbihj
dXJyZW50Q29kZU9yaWdpbigpKTsKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZH
TElDTVBoYXNlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RG
R0xJQ01QaGFzZS5jcHAJKHJldmlzaW9uIDE4NDYxNCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9kZmcvREZHTElDTVBoYXNlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTMwLDYgKzEzMCwxMiBA
QCBwdWJsaWM6CiAgICAgICAgICAgICAKICAgICAgICAgICAgIERGR19BU1NFUlQobV9ncmFwaCwg
cHJlSGVhZGVyLT50ZXJtaW5hbCgpLCBwcmVIZWFkZXItPnRlcm1pbmFsKCktPm9wKCkgPT0gSnVt
cCk7CiAgICAgICAgICAgICAKKyAgICAgICAgICAgIC8vIFdlIHNob3VsZCB2YWxpZGF0ZSB0aGUg
cHJlLWhlYWRlci4gSWYgd2UgcGxhY2VzIGZvckV4aXQgb3JpZ2lucyBvbiBub2RlcyBvbmx5IGlm
CisgICAgICAgICAgICAvLyBhdCB0aGUgdG9wIG9mIHRoYXQgbm9kZSBpdCBpcyBsZWdhbCB0byBl
eGl0LCB0aGVuIHdlIHdvdWxkIHNpbXBseSBjaGVjayBpZiBKdW1wCisgICAgICAgICAgICAvLyBo
YXMgYSBmb3JFeGl0LiBXZSBzaG91bGQgZGlzYWJsZSBob2lzdGluZyB0byBwcmUtaGVhZGVycyB0
aGF0IGRvbid0IHZhbGlkYXRlLgorICAgICAgICAgICAgLy8gT3IsIHdlIGNvdWxkIG9ubHkgYWxs
b3cgaG9pc3Rpbmcgb2YgdGhpbmdzIHRoYXQgZGVmaW5pdGVseSBkb24ndCBleGl0LgorICAgICAg
ICAgICAgLy8gRklYTUU6IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
NDUyMDQKKyAgICAgICAgICAgIAogICAgICAgICAgICAgZGF0YS5wcmVIZWFkZXIgPSBwcmVIZWFk
ZXI7CiAgICAgICAgIH0KICAgICAgICAgCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZn
L0RGR0xvb3BQcmVIZWFkZXJDcmVhdGlvblBoYXNlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvZGZnL0RGR0xvb3BQcmVIZWFkZXJDcmVhdGlvblBoYXNlLmNwcAkocmV2
aXNpb24gMTg0NjE0KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdMb29wUHJlSGVh
ZGVyQ3JlYXRpb25QaGFzZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTg4LDExICs4OCwyMyBAQCBw
dWJsaWM6CiAgICAgICAgICAgICAgICAgICAgIGV4aXN0aW5nUHJlSGVhZGVyID0gcHJlZGVjZXNz
b3I7CiAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAgICAgIH0KLSAg
ICAgICAgICAgICAgICBpZiAoZXhpc3RpbmdQcmVIZWFkZXIgPT0gcHJlZGVjZXNzb3IpCi0gICAg
ICAgICAgICAgICAgICAgIGNvbnRpbnVlOworICAgICAgICAgICAgICAgIC8vIFdlIHdvbid0IGhh
dmUgZHVwbGljYXRlIGVudHJpZXMgaW4gdGhlIHByZWRlY2Vzc29ycyBsaXN0LgorICAgICAgICAg
ICAgICAgIERGR19BU1NFUlQobV9ncmFwaCwgbnVsbHB0ciwgZXhpc3RpbmdQcmVIZWFkZXIgIT0g
cHJlZGVjZXNzb3IpOwogICAgICAgICAgICAgICAgIG5lZWRzTmV3UHJlSGVhZGVyID0gdHJ1ZTsK
ICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIAorICAg
ICAgICAgICAgLy8gVGhpcyBwaGFzZSBzaG91bGQgb25seSBiZSBydW4gb24gYSBERkcgd2hlcmUg
dW5yZWFjaGFibGUgYmxvY2tzIGhhdmUgYmVlbiBwcnVuZWQuCisgICAgICAgICAgICAvLyBXZSBh
bHNvIGRvbid0IGFsbG93IGxvb3BzIGJhY2sgdG8gcm9vdC4gVGhpcyBtZWFucyB0aGF0IGV2ZXJ5
IGxvb3AgaGVhZGVyIGhhcyBnb3QKKyAgICAgICAgICAgIC8vIHRvIGhhdmUgYSBwcmUtaGVhZGVy
LgorICAgICAgICAgICAgREZHX0FTU0VSVChtX2dyYXBoLCBudWxscHRyLCBleGlzdGluZ1ByZUhl
YWRlcik7CisgICAgICAgICAgICAKKyAgICAgICAgICAgIC8vIFdlIGFyZSBsb29raW5nIGF0IHRo
ZSBwcmVkZWNlc3NvcnMgb2YgYSBsb29wIGhlYWRlci4gQSBsb29wIGhlYWRlciBoYXMgdG8gaGF2
ZQorICAgICAgICAgICAgLy8gc29tZSBwcmVkZWNlc3NvciBvdGhlciB0aGFuIHRoZSBwcmUtaGVh
ZGVyLiBXZSBtdXN0IGhhdmUgYnJva2VuIGNyaXRpY2FsIGVkZ2VzCisgICAgICAgICAgICAvLyBi
ZWNhdXNlIHRoYXQgaXMgdGhlIERGRyBTU0EgY29udmVudGlvbi4gVGhlcmVmb3JlLCBlYWNoIHBy
ZWRlY2Vzc29yIG9mIHRoZSBsb29wCisgICAgICAgICAgICAvLyBoZWFkZXIgbXVzdCBoYXZlIG9u
bHkgb25lIHN1Y2Nlc3Nvci4KKyAgICAgICAgICAgIERGR19BU1NFUlQobV9ncmFwaCwgbnVsbHB0
ciwgZXhpc3RpbmdQcmVIZWFkZXItPnRlcm1pbmFsKCktPm9wKCkgPT0gSnVtcCk7CisgICAgICAg
ICAgICAKICAgICAgICAgICAgIGlmICghbmVlZHNOZXdQcmVIZWFkZXIpCiAgICAgICAgICAgICAg
ICAgY29udGludWU7CiAgICAgICAgICAgICAK
</data>
<flag name="review"
          id="278344"
          type_id="1"
          status="+"
          setter="ggaren"
    />
          </attachment>
      

    </bug>

</bugzilla>