<?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>101870</bug_id>
          
          <creation_ts>2012-11-11 15:54:30 -0800</creation_ts>
          <short_desc>DFG register allocation should be greedy rather than round-robin</short_desc>
          <delta_ts>2012-11-11 18:09:02 -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>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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Filip Pizlo">fpizlo</reporter>
          <assigned_to name="Filip Pizlo">fpizlo</assigned_to>
          <cc>barraclough</cc>
    
    <cc>ggaren</cc>
    
    <cc>mark.lam</cc>
    
    <cc>mhahnenberg</cc>
    
    <cc>msaboff</cc>
    
    <cc>oliver</cc>
    
    <cc>sam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>763903</commentid>
    <comment_count>0</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2012-11-11 15:54:30 -0800</bug_when>
    <thetext>This will simplify the code, reduce some code duplication, and possibly have some slight benefits since lower-numered registers also typically have smaller encodings.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>763909</commentid>
    <comment_count>1</comment_count>
      <attachid>173522</attachid>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2012-11-11 16:06:47 -0800</bug_when>
    <thetext>Created attachment 173522
the patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>763913</commentid>
    <comment_count>2</comment_count>
      <attachid>173522</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2012-11-11 16:10:08 -0800</bug_when>
    <thetext>Comment on attachment 173522
the patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>763949</commentid>
    <comment_count>3</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2012-11-11 18:09:02 -0800</bug_when>
    <thetext>Landed in http://trac.webkit.org/changeset/134182</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>173522</attachid>
            <date>2012-11-11 16:06:47 -0800</date>
            <delta_ts>2012-11-11 16:10:08 -0800</delta_ts>
            <desc>the patch</desc>
            <filename>greedy.patch</filename>
            <type>text/plain</type>
            <size>4317</size>
            <attacher name="Filip Pizlo">fpizlo</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMTM0MTc1KQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIxIEBA
CisyMDEyLTExLTExICBGaWxpcCBQaXpsbyAgPGZwaXpsb0BhcHBsZS5jb20+CisKKyAgICAgICAg
REZHIHJlZ2lzdGVyIGFsbG9jYXRpb24gc2hvdWxkIGJlIGdyZWVkeSByYXRoZXIgdGhhbiByb3Vu
ZC1yb2JpbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTAxODcwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
VGhpcyBzaW1wbGlmaWVzIHRoZSBjb2RlLCByZWR1Y2VzIHNvbWUgY29kZSBkdXBsaWNhdGlvbiwg
YW5kIHNob3dzIHNvbWUgc2xpZ2h0CisgICAgICAgIHBlcmZvcm1hbmNlIGltcHJvdmVtZW50cyBp
biBhIGZldyBwbGFjZXMsIGxpa2VseSBkdWUgdG8gdGhlIGZhY3QgdGhhdCBsb3dlci1udW1lcmVk
CisgICAgICAgIHJlZ2lzdGVycyBhbHNvIHR5cGljYWxseSBoYXZlIHNtYWxsZXIgZW5jb2Rpbmdz
LgorCisgICAgICAgICogZGZnL0RGR1JlZ2lzdGVyQmFuay5oOgorICAgICAgICAoSlNDOjpERkc6
OlJlZ2lzdGVyQmFuazo6UmVnaXN0ZXJCYW5rKToKKyAgICAgICAgKEpTQzo6REZHOjpSZWdpc3Rl
ckJhbms6OnRyeUFsbG9jYXRlKToKKyAgICAgICAgKEpTQzo6REZHOjpSZWdpc3RlckJhbms6OmFs
bG9jYXRlKToKKyAgICAgICAgKEpTQzo6REZHOjpSZWdpc3RlckJhbms6OmFsbG9jYXRlSW50ZXJu
YWwpOgorICAgICAgICAoUmVnaXN0ZXJCYW5rKToKKwogMjAxMi0xMS0xMSAgS2VuaWNoaSBJc2hp
YmFzaGkgIDxiYXNoaUBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgV1RGU3RyaW5nOjp1dGY4KCkg
c2hvdWxkIGhhdmUgYSBtb2RlIG9mIGNvbnZlcnNpb24gdG8gdXNlIHJlcGxhY2VtZW50IGNoYXJh
Y3RlcgpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdSZWdpc3RlckJhbmsuaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR1JlZ2lzdGVyQmFuay5o
CShyZXZpc2lvbiAxMzQxNjcpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR1JlZ2lz
dGVyQmFuay5oCSh3b3JraW5nIGNvcHkpCkBAIC03NSw3ICs3NSw2IEBAIGNsYXNzIFJlZ2lzdGVy
QmFuayB7CiAKIHB1YmxpYzoKICAgICBSZWdpc3RlckJhbmsoKQotICAgICAgICA6IG1fbGFzdEFs
bG9jYXRlZChOVU1fUkVHUyAtIDEpCiAgICAgewogICAgIH0KIApAQCAtODYsMTIgKzg1LDcgQEAg
cHVibGljOgogICAgIHsKICAgICAgICAgVmlydHVhbFJlZ2lzdGVyIGlnbm9yZWQ7CiAgICAgICAg
IAotICAgICAgICBmb3IgKHVpbnQzMl90IGkgPSBtX2xhc3RBbGxvY2F0ZWQgKyAxOyBpIDwgTlVN
X1JFR1M7ICsraSkgewotICAgICAgICAgICAgaWYgKCFtX2RhdGFbaV0ubG9ja0NvdW50ICYmIG1f
ZGF0YVtpXS5uYW1lID09IEludmFsaWRWaXJ0dWFsUmVnaXN0ZXIpCi0gICAgICAgICAgICAgICAg
cmV0dXJuIGFsbG9jYXRlSW50ZXJuYWwoaSwgaWdub3JlZCk7Ci0gICAgICAgIH0KLSAgICAgICAg
Ly8gTG9vcCBvdmVyIHRoZSByZW1haW5pbmcgZW50cmllcy4KLSAgICAgICAgZm9yICh1aW50MzJf
dCBpID0gMDsgaSA8PSBtX2xhc3RBbGxvY2F0ZWQ7ICsraSkgeworICAgICAgICBmb3IgKHVpbnQz
Ml90IGkgPSAwOyBpIDwgTlVNX1JFR1M7ICsraSkgewogICAgICAgICAgICAgaWYgKCFtX2RhdGFb
aV0ubG9ja0NvdW50ICYmIG1fZGF0YVtpXS5uYW1lID09IEludmFsaWRWaXJ0dWFsUmVnaXN0ZXIp
CiAgICAgICAgICAgICAgICAgcmV0dXJuIGFsbG9jYXRlSW50ZXJuYWwoaSwgaWdub3JlZCk7CiAg
ICAgICAgIH0KQEAgLTExNSw5ICsxMDksNiBAQCBwdWJsaWM6CiAgICAgICAgIHVpbnQzMl90IGN1
cnJlbnRMb3dlc3QgPSBOVU1fUkVHUzsKICAgICAgICAgU3BpbGxIaW50IGN1cnJlbnRTcGlsbE9y
ZGVyID0gU3BpbGxIaW50SW52YWxpZDsKIAotICAgICAgICAvLyBTY2FuIHRocm91Z2ggYWxsIHJl
Z2lzdGVyLCBzdGFydGluZyBhdCB0aGUgbGFzdCBhbGxvY2F0ZWQgJiBsb29waW5nIGFyb3VuZC4K
LSAgICAgICAgQVNTRVJUKG1fbGFzdEFsbG9jYXRlZCA8IE5VTV9SRUdTKTsKLQogICAgICAgICAv
LyBUaGlzIGxvb3AgaXMgYnJva2VuIGludG8gdHdvIGhhbHZlcywgbG9vcGluZyBmcm9tIHRoZSBs
YXN0IGFsbG9jYXRlZAogICAgICAgICAvLyByZWdpc3RlciAodGhlIHJlZ2lzdGVyIHJldHVybmVk
IGxhc3QgdGltZSB0aGlzIG1ldGhvZCB3YXMgY2FsbGVkKSB0bwogICAgICAgICAvLyB0aGUgbWF4
aW11bSByZWdpc3RlciB2YWx1ZSwgdGhlbiBmcm9tIDAgdG8gdGhlIGxhc3QgYWxsb2NhdGVkLgpA
QCAtMTI1LDcgKzExNiw3IEBAIHB1YmxpYzoKICAgICAgICAgLy8gdGhyYXNoLCBhbmQgbWluaW1p
emUgdGltZSBzcGVudCBzY2FubmluZyBsb2NrZWQgcmVnaXN0ZXJzIGluIGFsbG9jYXRpb24uCiAg
ICAgICAgIC8vIElmIGEgdW5sb2NrZWQgYW5kIHVubmFtZWQgcmVnaXN0ZXIgaXMgZm91bmQgcmV0
dXJuIGl0IGltbWVkaWF0ZWx5LgogICAgICAgICAvLyBPdGhlcndpc2UsIGZpbmQgdGhlIGZpcnN0
IHVubG9ja2VkIHJlZ2lzdGVyIHdpdGggdGhlIGxvd2VzdCBzcGlsbE9yZGVyLgotICAgICAgICBm
b3IgKHVpbnQzMl90IGkgPSBtX2xhc3RBbGxvY2F0ZWQgKyAxOyBpIDwgTlVNX1JFR1M7ICsraSkg
eworICAgICAgICBmb3IgKHVpbnQzMl90IGkgPSAwIDsgaSA8IE5VTV9SRUdTOyArK2kpIHsKICAg
ICAgICAgICAgIC8vICgxKSBJZiB0aGUgY3VycmVudCByZWdpc3RlciBpcyBsb2NrZWQsIGl0IGlz
IG5vdCBhIGNhbmRpZGF0ZS4KICAgICAgICAgICAgIGlmIChtX2RhdGFbaV0ubG9ja0NvdW50KQog
ICAgICAgICAgICAgICAgIGNvbnRpbnVlOwpAQCAtMTQwLDE4ICsxMzEsNiBAQCBwdWJsaWM6CiAg
ICAgICAgICAgICAgICAgY3VycmVudExvd2VzdCA9IGk7CiAgICAgICAgICAgICB9CiAgICAgICAg
IH0KLSAgICAgICAgLy8gTG9vcCBvdmVyIHRoZSByZW1haW5pbmcgZW50cmllcy4KLSAgICAgICAg
Zm9yICh1aW50MzJfdCBpID0gMDsgaSA8PSBtX2xhc3RBbGxvY2F0ZWQ7ICsraSkgewotICAgICAg
ICAgICAgaWYgKG1fZGF0YVtpXS5sb2NrQ291bnQpCi0gICAgICAgICAgICAgICAgY29udGludWU7
Ci0gICAgICAgICAgICBTcGlsbEhpbnQgc3BpbGxPcmRlciA9IG1fZGF0YVtpXS5zcGlsbE9yZGVy
OwotICAgICAgICAgICAgaWYgKHNwaWxsT3JkZXIgPT0gU3BpbGxIaW50SW52YWxpZCkKLSAgICAg
ICAgICAgICAgICByZXR1cm4gYWxsb2NhdGVJbnRlcm5hbChpLCBzcGlsbE1lKTsKLSAgICAgICAg
ICAgIGlmIChzcGlsbE9yZGVyIDwgY3VycmVudFNwaWxsT3JkZXIpIHsKLSAgICAgICAgICAgICAg
ICBjdXJyZW50U3BpbGxPcmRlciA9IHNwaWxsT3JkZXI7Ci0gICAgICAgICAgICAgICAgY3VycmVu
dExvd2VzdCA9IGk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIH0KIAogICAgICAgICAvLyBEZWFk
bG9jayBjaGVjayAtIHRoaXMgY291bGQgb25seSBvY2N1ciBpcyBhbGwgcmVnaXN0ZXJzIGFyZSBs
b2NrZWQhCiAgICAgICAgIEFTU0VSVChjdXJyZW50TG93ZXN0ICE9IE5VTV9SRUdTICYmIGN1cnJl
bnRTcGlsbE9yZGVyICE9IFNwaWxsSGludEludmFsaWQpOwpAQCAtMzU0LDcgKzMzMyw2IEBAIHBy
aXZhdGU6CiAgICAgICAgIC8vIE1hcmsgdGhlIHJlZ2lzdGVyIGFzIGxvY2tlZCAod2l0aCBhIGxv
Y2sgY291bnQgb2YgMSkuCiAgICAgICAgIG1fZGF0YVtpXS5sb2NrQ291bnQgPSAxOwogCi0gICAg
ICAgIG1fbGFzdEFsbG9jYXRlZCA9IGk7CiAgICAgICAgIHJldHVybiBCYW5rSW5mbzo6dG9SZWdp
c3RlcihpKTsKICAgICB9CiAKQEAgLTM3OCw4ICszNTYsNiBAQCBwcml2YXRlOgogCiAgICAgLy8g
SG9sZHMgdGhlIGN1cnJlbnQgc3RhdHVzIG9mIGFsbCByZWdpc3RlcnMuCiAgICAgTWFwRW50cnkg
bV9kYXRhW05VTV9SRUdTXTsKLSAgICAvLyBVc2VkIHRvIHRvIGltcGxlbWVudCBhIHNpbXBsZSBy
b3VuZC1yb2JpbiBsaWtlIGFsbG9jYXRpb24gc2NoZW1lLgotICAgIHVpbnQzMl90IG1fbGFzdEFs
bG9jYXRlZDsKIH07CiAKIH0gfSAvLyBuYW1lc3BhY2UgSlNDOjpERkcK
</data>
<flag name="review"
          id="188236"
          type_id="1"
          status="+"
          setter="ggaren"
    />
          </attachment>
      

    </bug>

</bugzilla>