<?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>80014</bug_id>
          
          <creation_ts>2012-03-01 00:55:37 -0800</creation_ts>
          <short_desc>DFG local CSE for a node can be terminated earlier</short_desc>
          <delta_ts>2012-03-01 01:32:37 -0800</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>Unspecified</rep_platform>
          <op_sys>Unspecified</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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Yuqiang Xian">yuqiang.xian</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>barraclough</cc>
    
    <cc>fpizlo</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>568446</commentid>
    <comment_count>0</comment_count>
    <who name="Yuqiang Xian">yuqiang.xian</who>
    <bug_when>2012-03-01 00:55:37 -0800</bug_when>
    <thetext>When one of the node&apos;s child is met in the process of back traversing the nodes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>568461</commentid>
    <comment_count>1</comment_count>
      <attachid>129662</attachid>
    <who name="Yuqiang Xian">yuqiang.xian</who>
    <bug_when>2012-03-01 01:21:17 -0800</bug_when>
    <thetext>Created attachment 129662
patch

Performance neutral on SunSpider, V8 and Kraken.

Collected 12 samples per benchmark/VM, with 4 VM invocations per benchmark. Emitted a call to gc() between sample
measurements. Used 1 benchmark iteration per VM invocation for warm-up. Used the jsc-specific preciseTime()
function to get microsecond-level timing. Reporting benchmark execution times with 95% confidence intervals in
milliseconds.

                                               ToT                    80014
SunSpider:
   3d-cube                                8.2738+-0.0353          8.2301+-0.0563
   3d-morph                              10.2796+-1.4343          9.6136+-0.0313         might be 1.0693x faster
   3d-raytrace                           11.0725+-0.9814         10.4138+-0.0440         might be 1.0632x faster
   access-binary-trees                    2.4162+-0.0410          2.3782+-0.0361         might be 1.0160x faster
   access-fannkuch                       10.2832+-0.0330    ?    10.2954+-0.0425       ?
   access-nbody                           5.4756+-0.0298          5.4618+-0.0295
   access-nsieve                          3.9493+-0.0242    ?     3.9842+-0.0311       ?
   bitops-3bit-bits-in-byte               1.2317+-0.0311    ?     1.2399+-0.0296       ?
   bitops-bits-in-byte                    4.6308+-0.0328    ?     4.6579+-0.0509       ?
   bitops-bitwise-and                     4.2234+-0.0316          4.2182+-0.0432
   bitops-nsieve-bits                     4.3899+-0.3781          4.2256+-0.0175         might be 1.0389x faster
   controlflow-recursive                  2.7894+-0.0347    ?     2.7986+-0.0338       ?
   crypto-aes                             9.7159+-0.1013    ?    10.5690+-1.2842       ? might be 1.0878x slower
   crypto-md5                             3.4543+-0.0349          3.4355+-0.0376
   crypto-sha1                            2.7817+-0.0356    ?     2.7985+-0.0392       ?
   date-format-tofte                     12.8141+-0.0429    ?    13.7343+-1.4600       ? might be 1.0718x slower
   date-format-xparb                     11.9026+-0.3037         11.8689+-0.0892
   math-cordic                            3.9316+-0.0467    ?     3.9752+-0.0324       ? might be 1.0111x slower
   math-partial-sums                     14.8843+-0.0637         14.8552+-0.0492
   math-spectral-norm                     2.6706+-0.0337          2.6667+-0.0376
   regexp-dna                             9.3694+-0.0691          9.3647+-0.0505
   string-base64                          5.5776+-0.0453    ?     5.6318+-0.0409       ?
   string-fasta                           9.4847+-0.0408          9.4238+-0.0588
   string-tagcloud                       16.1147+-0.0385         16.0927+-0.0581
   string-unpack-code                    27.4101+-0.2297    ?    27.4592+-0.0953       ?
   string-validate-input                  8.3594+-0.0566          8.3010+-0.0346

   &lt;arithmetic&gt; *                         7.9802+-0.0902    ?     7.9882+-0.0704       ? might be 1.0010x slower
   &lt;geometric&gt;                            6.2931+-0.0599          6.2917+-0.0331         might be 1.0002x faster
   &lt;harmonic&gt;                             4.8742+-0.0378          4.8738+-0.0156         might be 1.0001x faster

                                               ToT                    80014
V8:
   crypto                                94.7222+-0.6127         94.3364+-0.1624
   deltablue                            167.5102+-1.5407        166.1025+-1.0373
   earley-boyer                         120.8037+-2.9029    ?   121.9013+-2.8339       ?
   raytrace                              59.9594+-0.7856         58.9291+-0.3481         might be 1.0175x faster
   regexp                               111.0411+-0.6099    ?   111.5218+-0.6567       ?
   richards                             190.1924+-0.4228        189.7350+-0.5080
   splay                                 77.8327+-0.6798         77.0769+-0.2385

   &lt;arithmetic&gt;                         117.4374+-0.6452        117.0861+-0.5871         might be 1.0030x faster
   &lt;geometric&gt; *                        109.5003+-0.6401        109.0575+-0.5577         might be 1.0041x faster
   &lt;harmonic&gt;                           102.0258+-0.6461        101.4286+-0.5071         might be 1.0059x faster

                                               ToT                    80014
Kraken:
   ai-astar                             784.0337+-1.2429    ?   785.9269+-1.9518       ?
   audio-beat-detection                 237.0179+-0.2599    !   237.7329+-0.3846       ! definitely 1.0030x slower
   audio-dft                            387.1959+-3.4243    ?   388.8320+-3.7839       ?
   audio-fft                            152.0611+-1.0486        151.3095+-0.1807
   audio-oscillator                     345.9121+-1.9871    ?   346.2906+-2.4266       ?
   imaging-darkroom                     375.5057+-9.0815    ?   377.0849+-10.1587      ?
   imaging-desaturate                   304.5204+-1.5808        303.5016+-0.6957
   imaging-gaussian-blur                507.3724+-1.6954        507.3209+-1.5560
   json-parse-financial                  86.7866+-0.4406    ?    87.7147+-0.5420       ? might be 1.0107x slower
   json-stringify-tinderbox             105.6743+-0.5484        105.4368+-0.6363
   stanford-crypto-aes                  105.9003+-0.5528        105.5189+-0.3627
   stanford-crypto-ccm                  100.7187+-0.8381        100.0919+-0.7498
   stanford-crypto-pbkdf2               237.7638+-2.1886        235.6427+-0.4011
   stanford-crypto-sha256-iterative     103.2649+-0.7613    ?   103.9360+-1.4175       ?

   &lt;arithmetic&gt; *                       273.8377+-1.0482    ?   274.0243+-1.1220       ? might be 1.0007x slower
   &lt;geometric&gt;                          217.4013+-0.7602    ?   217.4395+-0.8597       ? might be 1.0002x slower
   &lt;harmonic&gt;                           175.6196+-0.5666    ?   175.6745+-0.6949       ? might be 1.0003x slower

                                               ToT                    80014
All benchmarks:
   &lt;arithmetic&gt;                         103.4740+-0.4113    ?   103.4816+-0.3955       ? might be 1.0001x slower
   &lt;geometric&gt;                           27.6609+-0.1844         27.6424+-0.0895         might be 1.0007x faster
   &lt;harmonic&gt;                             8.5727+-0.0653          8.5714+-0.0268         might be 1.0002x faster

                                               ToT                    80014
Geomean of preferred means:
   &lt;scaled-result&gt;                       62.0820+-0.3918         62.0323+-0.2147         might be 1.0008x faster</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>568465</commentid>
    <comment_count>2</comment_count>
      <attachid>129662</attachid>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2012-03-01 01:22:42 -0800</bug_when>
    <thetext>Comment on attachment 129662
patch

R=me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>568469</commentid>
    <comment_count>3</comment_count>
      <attachid>129662</attachid>
    <who name="Yuqiang Xian">yuqiang.xian</who>
    <bug_when>2012-03-01 01:28:45 -0800</bug_when>
    <thetext>Comment on attachment 129662
patch

Going to land it manually... I was thinking that you might be offline so the review might be delayed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>568471</commentid>
    <comment_count>4</comment_count>
    <who name="Yuqiang Xian">yuqiang.xian</who>
    <bug_when>2012-03-01 01:32:37 -0800</bug_when>
    <thetext>Landed as http://trac.webkit.org/changeset/109325</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>129662</attachid>
            <date>2012-03-01 01:21:17 -0800</date>
            <delta_ts>2012-03-01 01:28:45 -0800</delta_ts>
            <desc>patch</desc>
            <filename>80014.0.patch</filename>
            <type>text/plain</type>
            <size>4595</size>
            <attacher name="Yuqiang Xian">yuqiang.xian</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMTA5MzIyKQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDI0IEBA
CisyMDEyLTAzLTAxICBZdXFpYW5nIFhpYW4gIDx5dXFpYW5nLnhpYW5AaW50ZWwuY29tPgorCisg
ICAgICAgIERGRyBsb2NhbCBDU0UgZm9yIGEgbm9kZSBjYW4gYmUgdGVybWluYXRlZCBlYXJsaWVy
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04MDAxNAor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdoZW4gb25l
IG9mIHRoZSBub2RlJ3MgY2hpbGRyZWRuIGlzIG1ldCBpbiB0aGUgcHJvY2VzcyBvZiBiYWNrIHRy
YXZlcnNpbmcKKyAgICAgICAgdGhlIG5vZGVzLCB3ZSBkb24ndCBuZWVkIHRvIHRyYXZlcnNlIHRo
ZSByZW1haW5pbmcgbm9kZXMuCisgICAgICAgIFRoaXMgaXMgcGVyZm9ybWFuY2UgbmV1dHJhbCBv
biBTdW5TcGlkZXIsIFY4IGFuZCBLcmFrZW4uCisKKyAgICAgICAgKiBkZmcvREZHQ1NFUGhhc2Uu
Y3BwOgorICAgICAgICAoSlNDOjpERkc6OkNTRVBoYXNlOjpwdXJlQ1NFKToKKyAgICAgICAgKEpT
Qzo6REZHOjpDU0VQaGFzZTo6aW1wdXJlQ1NFKToKKyAgICAgICAgKEpTQzo6REZHOjpDU0VQaGFz
ZTo6Z2V0QnlWYWxMb2FkRWxpbWluYXRpb24pOgorICAgICAgICAoSlNDOjpERkc6OkNTRVBoYXNl
OjpjaGVja0Z1bmN0aW9uRWxpbWluYXRpb24pOgorICAgICAgICAoSlNDOjpERkc6OkNTRVBoYXNl
OjpjaGVja1N0cnVjdHVyZUxvYWRFbGltaW5hdGlvbik6CisgICAgICAgIChKU0M6OkRGRzo6Q1NF
UGhhc2U6OmdldEJ5T2Zmc2V0TG9hZEVsaW1pbmF0aW9uKToKKyAgICAgICAgKEpTQzo6REZHOjpD
U0VQaGFzZTo6Z2V0UHJvcGVydHlTdG9yYWdlTG9hZEVsaW1pbmF0aW9uKToKKyAgICAgICAgKEpT
Qzo6REZHOjpDU0VQaGFzZTo6Z2V0SW5kZXhlZFByb3BlcnR5U3RvcmFnZUxvYWRFbGltaW5hdGlv
bik6CisKIDIwMTItMDItMjkgIFl1cWlhbmcgWGlhbiAgPHl1cWlhbmcueGlhbkBpbnRlbC5jb20+
CiAKICAgICAgICAgREZHIEJhc2ljQmxvY2tzIHNob3VsZCBub3QgcmVxdWlyZSB0aGF0IHRoZWly
IG5vZGVzIGhhdmUgY29udGludW91cyBpbmRpY2VzIGluIHRoZSBncmFwaApJbmRleDogU291cmNl
L0phdmFTY3JpcHRDb3JlL2RmZy9ERkdDU0VQaGFzZS5jcHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L0phdmFTY3JpcHRDb3JlL2RmZy9ERkdDU0VQaGFzZS5jcHAJKHJldmlzaW9uIDEwOTMyMikKKysr
IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHQ1NFUGhhc2UuY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC05MCw2ICs5MCw5IEBAIHByaXZhdGU6CiAgICAgICAgIAogICAgICAgICBmb3IgKHVuc2ln
bmVkIGkgPSBlbmRJbmRleEZvclB1cmVDU0UoKTsgaS0tID4gbV9jdXJyZW50QmxvY2stPnN0YXJ0
RXhjbHVkaW5nUGhpczspIHsKICAgICAgICAgICAgIE5vZGVJbmRleCBpbmRleCA9IG1fY3VycmVu
dEJsb2NrLT5hdChpKTsKKyAgICAgICAgICAgIGlmIChpbmRleCA9PSBjaGlsZDEgfHwgaW5kZXgg
PT0gY2hpbGQyIHx8IGluZGV4ID09IGNoaWxkMykKKyAgICAgICAgICAgICAgICBicmVhazsKKwog
ICAgICAgICAgICAgTm9kZSYgb3RoZXJOb2RlID0gbV9ncmFwaFtpbmRleF07CiAgICAgICAgICAg
ICBpZiAobm9kZS5vcCAhPSBvdGhlck5vZGUub3ApCiAgICAgICAgICAgICAgICAgY29udGludWU7
CkBAIC0xNzQsNiArMTc3LDkgQEAgcHJpdmF0ZToKICAgICAgICAgCiAgICAgICAgIGZvciAodW5z
aWduZWQgaSA9IG1faW5kZXhJbkJsb2NrOyBpLS0gPiBtX2N1cnJlbnRCbG9jay0+c3RhcnRFeGNs
dWRpbmdQaGlzOykgewogICAgICAgICAgICAgTm9kZUluZGV4IGluZGV4ID0gbV9jdXJyZW50Qmxv
Y2stPmF0KGkpOworICAgICAgICAgICAgaWYgKGluZGV4ID09IGNoaWxkMSB8fCBpbmRleCA9PSBj
aGlsZDIgfHwgaW5kZXggPT0gY2hpbGQzKQorICAgICAgICAgICAgICAgIGJyZWFrOworCiAgICAg
ICAgICAgICBOb2RlJiBvdGhlck5vZGUgPSBtX2dyYXBoW2luZGV4XTsKICAgICAgICAgICAgIGlm
IChub2RlLm9wID09IG90aGVyTm9kZS5vcAogICAgICAgICAgICAgICAgICYmIG5vZGUuYXJpdGhO
b2RlRmxhZ3NGb3JDb21wYXJlKCkgPT0gb3RoZXJOb2RlLmFyaXRoTm9kZUZsYWdzRm9yQ29tcGFy
ZSgpKSB7CkBAIC0yMjYsNiArMjMyLDkgQEAgcHJpdmF0ZToKICAgICB7CiAgICAgICAgIGZvciAo
dW5zaWduZWQgaSA9IG1faW5kZXhJbkJsb2NrOyBpLS0gPiBtX2N1cnJlbnRCbG9jay0+c3RhcnRF
eGNsdWRpbmdQaGlzOykgewogICAgICAgICAgICAgTm9kZUluZGV4IGluZGV4ID0gbV9jdXJyZW50
QmxvY2stPmF0KGkpOworICAgICAgICAgICAgaWYgKGluZGV4ID09IGNoaWxkMSB8fCBpbmRleCA9
PSBjYW5vbmljYWxpemUoY2hpbGQyKSkgCisgICAgICAgICAgICAgICAgYnJlYWs7CisKICAgICAg
ICAgICAgIE5vZGUmIG5vZGUgPSBtX2dyYXBoW2luZGV4XTsKICAgICAgICAgICAgIHN3aXRjaCAo
bm9kZS5vcCkgewogICAgICAgICAgICAgY2FzZSBHZXRCeVZhbDoKQEAgLTI2Nyw2ICsyNzYsOSBA
QCBwcml2YXRlOgogICAgIHsKICAgICAgICAgZm9yICh1bnNpZ25lZCBpID0gZW5kSW5kZXhGb3JQ
dXJlQ1NFKCk7IGktLSA+IG1fY3VycmVudEJsb2NrLT5zdGFydEV4Y2x1ZGluZ1BoaXM7KSB7CiAg
ICAgICAgICAgICBOb2RlSW5kZXggaW5kZXggPSBtX2N1cnJlbnRCbG9jay0+YXQoaSk7CisgICAg
ICAgICAgICBpZiAoaW5kZXggPT0gY2hpbGQxKSAKKyAgICAgICAgICAgICAgICBicmVhazsKKwog
ICAgICAgICAgICAgTm9kZSYgbm9kZSA9IG1fZ3JhcGhbaW5kZXhdOwogICAgICAgICAgICAgaWYg
KG5vZGUub3AgPT0gQ2hlY2tGdW5jdGlvbiAmJiBub2RlLmNoaWxkMSgpID09IGNoaWxkMSAmJiBu
b2RlLmZ1bmN0aW9uKCkgPT0gZnVuY3Rpb24pCiAgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7
CkBAIC0yNzgsNiArMjkwLDkgQEAgcHJpdmF0ZToKICAgICB7CiAgICAgICAgIGZvciAodW5zaWdu
ZWQgaSA9IG1faW5kZXhJbkJsb2NrOyBpLS0gPiBtX2N1cnJlbnRCbG9jay0+c3RhcnRFeGNsdWRp
bmdQaGlzOykgewogICAgICAgICAgICAgTm9kZUluZGV4IGluZGV4ID0gbV9jdXJyZW50QmxvY2st
PmF0KGkpOworICAgICAgICAgICAgaWYgKGluZGV4ID09IGNoaWxkMSkgCisgICAgICAgICAgICAg
ICAgYnJlYWs7CisKICAgICAgICAgICAgIE5vZGUmIG5vZGUgPSBtX2dyYXBoW2luZGV4XTsKICAg
ICAgICAgICAgIHN3aXRjaCAobm9kZS5vcCkgewogICAgICAgICAgICAgY2FzZSBDaGVja1N0cnVj
dHVyZToKQEAgLTMyMSw2ICszMzYsOSBAQCBwcml2YXRlOgogICAgIHsKICAgICAgICAgZm9yICh1
bnNpZ25lZCBpID0gbV9pbmRleEluQmxvY2s7IGktLSA+IG1fY3VycmVudEJsb2NrLT5zdGFydEV4
Y2x1ZGluZ1BoaXM7KSB7CiAgICAgICAgICAgICBOb2RlSW5kZXggaW5kZXggPSBtX2N1cnJlbnRC
bG9jay0+YXQoaSk7CisgICAgICAgICAgICBpZiAoaW5kZXggPT0gY2hpbGQxKSAKKyAgICAgICAg
ICAgICAgICBicmVhazsKKwogICAgICAgICAgICAgTm9kZSYgbm9kZSA9IG1fZ3JhcGhbaW5kZXhd
OwogICAgICAgICAgICAgc3dpdGNoIChub2RlLm9wKSB7CiAgICAgICAgICAgICBjYXNlIEdldEJ5
T2Zmc2V0OgpAQCAtMzY0LDYgKzM4Miw5IEBAIHByaXZhdGU6CiAgICAgewogICAgICAgICBmb3Ig
KHVuc2lnbmVkIGkgPSBtX2luZGV4SW5CbG9jazsgaS0tID4gbV9jdXJyZW50QmxvY2stPnN0YXJ0
RXhjbHVkaW5nUGhpczspIHsKICAgICAgICAgICAgIE5vZGVJbmRleCBpbmRleCA9IG1fY3VycmVu
dEJsb2NrLT5hdChpKTsKKyAgICAgICAgICAgIGlmIChpbmRleCA9PSBjaGlsZDEpIAorICAgICAg
ICAgICAgICAgIGJyZWFrOworCiAgICAgICAgICAgICBOb2RlJiBub2RlID0gbV9ncmFwaFtpbmRl
eF07CiAgICAgICAgICAgICBzd2l0Y2ggKG5vZGUub3ApIHsKICAgICAgICAgICAgIGNhc2UgR2V0
UHJvcGVydHlTdG9yYWdlOgpAQCAtNDAwLDYgKzQyMSw5IEBAIHByaXZhdGU6CiAgICAgewogICAg
ICAgICBmb3IgKHVuc2lnbmVkIGkgPSBtX2luZGV4SW5CbG9jazsgaS0tID4gbV9jdXJyZW50Qmxv
Y2stPnN0YXJ0RXhjbHVkaW5nUGhpczspIHsKICAgICAgICAgICAgIE5vZGVJbmRleCBpbmRleCA9
IG1fY3VycmVudEJsb2NrLT5hdChpKTsKKyAgICAgICAgICAgIGlmIChpbmRleCA9PSBjaGlsZDEp
IAorICAgICAgICAgICAgICAgIGJyZWFrOworCiAgICAgICAgICAgICBOb2RlJiBub2RlID0gbV9n
cmFwaFtpbmRleF07CiAgICAgICAgICAgICBzd2l0Y2ggKG5vZGUub3ApIHsKICAgICAgICAgICAg
IGNhc2UgR2V0SW5kZXhlZFByb3BlcnR5U3RvcmFnZTogewo=
</data>
<flag name="review"
          id="132397"
          type_id="1"
          status="+"
          setter="fpizlo"
    />
    <flag name="commit-queue"
          id="132398"
          type_id="3"
          status="-"
          setter="yuqiang.xian"
    />
          </attachment>
      

    </bug>

</bugzilla>