<?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>72313</bug_id>
          
          <creation_ts>2011-11-14 14:30:54 -0800</creation_ts>
          <short_desc>DFG&apos;s inline references to objects should be tracked</short_desc>
          <delta_ts>2011-11-14 17:23:19 -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>
          
          <blocked>72312</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Filip Pizlo">fpizlo</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>502323</commentid>
    <comment_count>0</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2011-11-14 14:30:54 -0800</bug_when>
    <thetext>The DFG may emit code that refers to objects in the heap.  This is only safe because those same objects would be referenced from inline caches maintained by the old JIT, which only works because the old JIT will never clear inline caches.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>502325</commentid>
    <comment_count>1</comment_count>
      <attachid>115033</attachid>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2011-11-14 14:37:35 -0800</bug_when>
    <thetext>Created attachment 115033
the patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>502330</commentid>
    <comment_count>2</comment_count>
      <attachid>115033</attachid>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2011-11-14 14:44:42 -0800</bug_when>
    <thetext>Comment on attachment 115033
the patch

r=oliver</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>502422</commentid>
    <comment_count>3</comment_count>
      <attachid>115033</attachid>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2011-11-14 16:02:04 -0800</bug_when>
    <thetext>Comment on attachment 115033
the patch

This is broken.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>502423</commentid>
    <comment_count>4</comment_count>
      <attachid>115051</attachid>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2011-11-14 16:02:38 -0800</bug_when>
    <thetext>Created attachment 115051
the patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>502517</commentid>
    <comment_count>5</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2011-11-14 17:23:19 -0800</bug_when>
    <thetext>Landed in http://trac.webkit.org/changeset/100221</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>115033</attachid>
            <date>2011-11-14 14:37:35 -0800</date>
            <delta_ts>2011-11-14 16:02:38 -0800</delta_ts>
            <desc>the patch</desc>
            <filename>dfgpincell_patch_1.diff</filename>
            <type>text/plain</type>
            <size>7125</size>
            <attacher name="Filip Pizlo">fpizlo</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMTAwMTkzKQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDI3IEBA
CisyMDExLTExLTE0ICBGaWxpcCBQaXpsbyAgPGZwaXpsb0BhcHBsZS5jb20+CisKKyAgICAgICAg
REZHJ3MgaW5saW5lIHJlZmVyZW5jZXMgdG8gb2JqZWN0cyBzaG91bGQgYmUgdHJhY2tlZAorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzIzMTMKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKyAgICAgICAgCisgICAgICAgIEFkZGVk
IGEgcGluQ2VsbCgpIG1ldGhvZCBpbiB0aGUgcGFyc2VyIHRoYXQgY3VycmVudGx5IGNyZWF0ZXMg
YQorICAgICAgICBkdW1teSBjb25zdGFudCBpbiBDb2RlQmxvY2suIEFkZGVkIGNhbGxzIHRvIHBp
bkNlbGwoKSB3aGVyZXZlciB0aGUKKyAgICAgICAgREZHIHdvdWxkIGlubGluZSBhIGNvbnN0YW50
IHJlZmVyZW5jZSB0aGF0IHRoZSBvcmlnaW5hbCBjb2RlIHdvdWxkCisgICAgICAgIG5vdCBoYXZl
IHJlZmVycmVkIHRvLgorICAgICAgICAKKyAgICAgICAgQWxzbyBmaXhlZCBhIGJ1ZyB3aGVyZSBp
ZiBhIHB1dF9ieV9pZCB0cmFuc2l0aW9uIGlubGluZSBjYWNoZSBoYWQKKyAgICAgICAgYWxyZWFk
eSBiZWVuIGludmFsaWRhdGVkIChzdHJ1Y3R1cmUgY2hhbmdlIG9uIHByb3RvdHlwZSBjaGFpbikg
dGhlbgorICAgICAgICB0aGUgREZHIHdvdWxkIGhhdmUgZW1pdHRlZCBhbiBlcnJvbmVvdXMgY2hl
Y2suCisKKyAgICAgICAgKiBkZmcvREZHQnl0ZUNvZGVQYXJzZXIuY3BwOgorICAgICAgICAoSlND
OjpERkc6OkJ5dGVDb2RlUGFyc2VyOjpnZXRDZWxsQ29uc3RhbnRJbmRleCk6CisgICAgICAgIChK
U0M6OkRGRzo6Qnl0ZUNvZGVQYXJzZXI6OnBpbkNlbGwpOgorICAgICAgICAoSlNDOjpERkc6OkJ5
dGVDb2RlUGFyc2VyOjpjZWxsQ29uc3RhbnQpOgorICAgICAgICAoSlNDOjpERkc6OkJ5dGVDb2Rl
UGFyc2VyOjpoYW5kbGVDYWxsKToKKyAgICAgICAgKEpTQzo6REZHOjpCeXRlQ29kZVBhcnNlcjo6
aGFuZGxlSW5saW5pbmcpOgorICAgICAgICAoSlNDOjpERkc6OkJ5dGVDb2RlUGFyc2VyOjpwYXJz
ZUJsb2NrKToKKwogMjAxMS0xMS0xNCAgVmluY2VudCBTY2hlaWIgIDxzY2hlaWJAY2hyb21pdW0u
b3JnPgogCiAgICAgICAgIE1vdXNlIExvY2s6IFJlbmFtaW5nIHRvICdQb2ludGVyIExvY2snOiBF
TkFCTEUgRmxhZ3MKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHQnl0ZUNvZGVQ
YXJzZXIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHQnl0
ZUNvZGVQYXJzZXIuY3BwCShyZXZpc2lvbiAxMDAxODApCisrKyBTb3VyY2UvSmF2YVNjcmlwdENv
cmUvZGZnL0RGR0J5dGVDb2RlUGFyc2VyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNTA3LDExICs1
MDcsMTEgQEAgcHJpdmF0ZToKICAgICAgICAgcmV0dXJuIGdldEpTQ29uc3RhbnQobV9jb25zdGFu
dE5hTik7CiAgICAgfQogICAgIAotICAgIE5vZGVJbmRleCBjZWxsQ29uc3RhbnQoSlNDZWxsKiBj
ZWxsKQorICAgIHVuc2lnbmVkIGdldENlbGxDb25zdGFudEluZGV4KEpTQ2VsbCogY2VsbCkKICAg
ICB7CiAgICAgICAgIEhhc2hNYXA8SlNDZWxsKiwgdW5zaWduZWQ+OjppdGVyYXRvciBpdGVyID0g
bV9jZWxsQ29uc3RhbnRzLmZpbmQoY2VsbCk7CiAgICAgICAgIGlmIChpdGVyICE9IG1fY2VsbENv
bnN0YW50cy5lbmQoKSkKLSAgICAgICAgICAgIHJldHVybiBnZXRKU0NvbnN0YW50KGl0ZXItPnNl
Y29uZCk7CisgICAgICAgICAgICByZXR1cm4gaXRlci0+c2Vjb25kOwogICAgICAgICAKICAgICAg
ICAgbV9jb2RlQmxvY2stPmFkZENvbnN0YW50KGNlbGwpOwogICAgICAgICBtX2NvbnN0YW50cy5h
cHBlbmQoQ29uc3RhbnRSZWNvcmQoKSk7CkBAIC01MTksNyArNTE5LDE5IEBAIHByaXZhdGU6CiAg
ICAgICAgIAogICAgICAgICBtX2NlbGxDb25zdGFudHMuYWRkKGNlbGwsIG1fY29kZUJsb2NrLT5u
dW1iZXJPZkNvbnN0YW50UmVnaXN0ZXJzKCkgLSAxKTsKICAgICAgICAgCi0gICAgICAgIHJldHVy
biBnZXRKU0NvbnN0YW50KG1fY29kZUJsb2NrLT5udW1iZXJPZkNvbnN0YW50UmVnaXN0ZXJzKCkg
LSAxKTsKKyAgICAgICAgcmV0dXJuIG1fY29kZUJsb2NrLT5udW1iZXJPZkNvbnN0YW50UmVnaXN0
ZXJzKCkgLSAxOworICAgIH0KKyAgICAKKyAgICB2b2lkIHBpbkNlbGwoSlNDZWxsKiBjZWxsKQor
ICAgIHsKKyAgICAgICAgaWYgKCFjZWxsKQorICAgICAgICAgICAgcmV0dXJuOworICAgICAgICBn
ZXRDZWxsQ29uc3RhbnRJbmRleChjZWxsKTsKKyAgICB9CisgICAgCisgICAgTm9kZUluZGV4IGNl
bGxDb25zdGFudChKU0NlbGwqIGNlbGwpCisgICAgeworICAgICAgICByZXR1cm4gZ2V0SlNDb25z
dGFudChnZXRDZWxsQ29uc3RhbnRJbmRleChjZWxsKSk7CiAgICAgfQogICAgIAogICAgIENvZGVP
cmlnaW4gY3VycmVudENvZGVPcmlnaW4oKQpAQCAtOTA1LDggKzkxNywxMCBAQCB2b2lkIEJ5dGVD
b2RlUGFyc2VyOjpoYW5kbGVDYWxsKEludGVycHJlCiAgICAgICAgIH0KICAgICAgICAgICAgICAg
ICAKICAgICAgICAgaWYgKGludHJpbnNpYyAhPSBOb0ludHJpbnNpYykgewotICAgICAgICAgICAg
aWYgKCFjZXJ0YWluQWJvdXRFeHBlY3RlZEZ1bmN0aW9uKQorICAgICAgICAgICAgaWYgKCFjZXJ0
YWluQWJvdXRFeHBlY3RlZEZ1bmN0aW9uKSB7CisgICAgICAgICAgICAgICAgcGluQ2VsbChleHBl
Y3RlZEZ1bmN0aW9uKTsKICAgICAgICAgICAgICAgICBhZGRUb0dyYXBoKENoZWNrRnVuY3Rpb24s
IE9wSW5mbyhleHBlY3RlZEZ1bmN0aW9uKSwgY2FsbFRhcmdldCk7CisgICAgICAgICAgICB9CiAg
ICAgICAgICAgICAKICAgICAgICAgICAgIGlmIChoYW5kbGVJbnRyaW5zaWModXNlc1Jlc3VsdCwg
cmVzdWx0T3BlcmFuZCwgaW50cmluc2ljLCBmaXJzdEFyZywgbGFzdEFyZywgcHJlZGljdGlvbikp
IHsKICAgICAgICAgICAgICAgICBpZiAoIWNlcnRhaW5BYm91dEV4cGVjdGVkRnVuY3Rpb24pIHsK
QEAgLTk3Myw4ICs5ODcsMTAgQEAgYm9vbCBCeXRlQ29kZVBhcnNlcjo6aGFuZGxlSW5saW5pbmco
Ym9vbAogICAgIC8vIE5vdyB3ZSBrbm93IHdpdGhvdXQgYSBkb3VidCB0aGF0IHdlIGFyZSBjb21t
aXR0ZWQgdG8gaW5saW5pbmcuIFNvIGJlZ2luIHRoZSBwcm9jZXNzCiAgICAgLy8gYnkgY2hlY2tp
bmcgdGhlIGNhbGxlZSAoaWYgbmVjZXNzYXJ5KSBhbmQgbWFraW5nIHN1cmUgdGhhdCBhcmd1bWVu
dHMgYW5kIHRoZSBjYWxsZWUKICAgICAvLyBhcmUgZmx1c2hlZC4KLSAgICBpZiAoIWNlcnRhaW5B
Ym91dEV4cGVjdGVkRnVuY3Rpb24pCisgICAgaWYgKCFjZXJ0YWluQWJvdXRFeHBlY3RlZEZ1bmN0
aW9uKSB7CisgICAgICAgIHBpbkNlbGwoZXhwZWN0ZWRGdW5jdGlvbik7CiAgICAgICAgIGFkZFRv
R3JhcGgoQ2hlY2tGdW5jdGlvbiwgT3BJbmZvKGV4cGVjdGVkRnVuY3Rpb24pLCBjYWxsVGFyZ2V0
Tm9kZUluZGV4KTsKKyAgICB9CiAgICAgCiAgICAgLy8gRklYTUU6IERvbid0IGZsdXNoIGNvbnN0
YW50cyEKICAgICAKQEAgLTE2MzUsNiArMTY1MSwxMSBAQCBib29sIEJ5dGVDb2RlUGFyc2VyOjpw
YXJzZUJsb2NrKHVuc2lnbmVkCiAgICAgICAgICAgICBpZiAobWV0aG9kQ2FsbC5zZWVuICYmICEh
bWV0aG9kQ2FsbC5jYWNoZWRTdHJ1Y3R1cmUgJiYgIXN0dWJJbmZvLnNlZW4pIHsKICAgICAgICAg
ICAgICAgICAvLyBJdCdzIG1vbm9tb3JwaGljIGFzIGZhciBhcyB3ZSBjYW4gdGVsbCwgc2luY2Ug
dGhlIG1ldGhvZF9jaGVjayB3YXMgbGlua2VkCiAgICAgICAgICAgICAgICAgLy8gYnV0IHRoZSBz
bG93IHBhdGggKGkuZS4gdGhlIG5vcm1hbCBnZXRfYnlfaWQpIG5ldmVyIGZpcmVkLgorCisgICAg
ICAgICAgICAgICAgcGluQ2VsbChtZXRob2RDYWxsLmNhY2hlZFN0cnVjdHVyZS5nZXQoKSk7Cisg
ICAgICAgICAgICAgICAgcGluQ2VsbChtZXRob2RDYWxsLmNhY2hlZFByb3RvdHlwZVN0cnVjdHVy
ZS5nZXQoKSk7CisgICAgICAgICAgICAgICAgcGluQ2VsbChtZXRob2RDYWxsLmNhY2hlZEZ1bmN0
aW9uLmdldCgpKTsKKyAgICAgICAgICAgICAgICBwaW5DZWxsKG1ldGhvZENhbGwuY2FjaGVkUHJv
dG90eXBlLmdldCgpKTsKICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgIE5vZGVJbmRleCBj
aGVja01ldGhvZCA9IGFkZFRvR3JhcGgoQ2hlY2tNZXRob2QsIE9wSW5mbyhpZGVudGlmaWVyKSwg
T3BJbmZvKG1fZ3JhcGgubV9tZXRob2RDaGVja0RhdGEuc2l6ZSgpKSwgYmFzZSk7CiAgICAgICAg
ICAgICAgICAgc2V0KGdldEluc3RydWN0aW9uWzFdLnUub3BlcmFuZCwgY2hlY2tNZXRob2QpOwpA
QCAtMTc0NSw2ICsxNzY2LDkgQEAgYm9vbCBCeXRlQ29kZVBhcnNlcjo6cGFyc2VCbG9jayh1bnNp
Z25lZAogICAgICAgICAgICAgICAgIGlmIChwcmVkaWN0aW9uID09IFByZWRpY3ROb25lKQogICAg
ICAgICAgICAgICAgICAgICBhZGRUb0dyYXBoKEZvcmNlT1NSRXhpdCk7CiAgICAgICAgICAgICAg
ICAgCisgICAgICAgICAgICAgICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IHN0cnVjdHVyZVNl
dC5zaXplKCk7ICsraSkKKyAgICAgICAgICAgICAgICAgICAgcGluQ2VsbChzdHJ1Y3R1cmVTZXRb
aV0pOworICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgIGFkZFRvR3JhcGgoQ2hlY2tT
dHJ1Y3R1cmUsIE9wSW5mbyhtX2dyYXBoLmFkZFN0cnVjdHVyZVNldChzdHJ1Y3R1cmVTZXQpKSwg
YmFzZSk7CiAgICAgICAgICAgICAgICAgc2V0KGN1cnJlbnRJbnN0cnVjdGlvblsxXS51Lm9wZXJh
bmQsIGFkZFRvR3JhcGgoR2V0QnlPZmZzZXQsIE9wSW5mbyhtX2dyYXBoLm1fc3RvcmFnZUFjY2Vz
c0RhdGEuc2l6ZSgpKSwgT3BJbmZvKHByZWRpY3Rpb24pLCBhZGRUb0dyYXBoKEdldFByb3BlcnR5
U3RvcmFnZSwgYmFzZSkpKTsKICAgICAgICAgICAgICAgICAKQEAgLTE3NzgsNiArMTgwMiw3IEBA
IGJvb2wgQnl0ZUNvZGVQYXJzZXI6OnBhcnNlQmxvY2sodW5zaWduZWQKICAgICAgICAgICAgICAg
ICAgICAgc2l6ZV90IG9mZnNldCA9IHN0cnVjdHVyZS0+Z2V0KCptX2dsb2JhbERhdGEsIGlkZW50
aWZpZXIpOwogICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgaWYgKG9m
ZnNldCAhPSBub3RGb3VuZCkgeworICAgICAgICAgICAgICAgICAgICAgICAgcGluQ2VsbChzdHJ1
Y3R1cmUpOwogICAgICAgICAgICAgICAgICAgICAgICAgYWRkVG9HcmFwaChDaGVja1N0cnVjdHVy
ZSwgT3BJbmZvKG1fZ3JhcGguYWRkU3RydWN0dXJlU2V0KHN0cnVjdHVyZSkpLCBiYXNlKTsKICAg
ICAgICAgICAgICAgICAgICAgICAgIGFkZFRvR3JhcGgoUHV0QnlPZmZzZXQsIE9wSW5mbyhtX2dy
YXBoLm1fc3RvcmFnZUFjY2Vzc0RhdGEuc2l6ZSgpKSwgYmFzZSwgYWRkVG9HcmFwaChHZXRQcm9w
ZXJ0eVN0b3JhZ2UsIGJhc2UpLCB2YWx1ZSk7CiAgICAgICAgICAgICAgICAgICAgICAgICAKQEAg
LTE4MDQsNiArMTgyOSw4IEBAIGJvb2wgQnl0ZUNvZGVQYXJzZXI6OnBhcnNlQmxvY2sodW5zaWdu
ZWQKICAgICAgICAgICAgICAgICAgICAgc2l6ZV90IG9mZnNldCA9IG5ld1N0cnVjdHVyZS0+Z2V0
KCptX2dsb2JhbERhdGEsIGlkZW50aWZpZXIpOwogICAgICAgICAgICAgICAgICAgICAKICAgICAg
ICAgICAgICAgICAgICAgaWYgKG9mZnNldCAhPSBub3RGb3VuZCkgeworICAgICAgICAgICAgICAg
ICAgICAgICAgcGluQ2VsbChwcmV2aW91c1N0cnVjdHVyZSk7CisgICAgICAgICAgICAgICAgICAg
ICAgICBwaW5DZWxsKG5ld1N0cnVjdHVyZSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBhZGRU
b0dyYXBoKENoZWNrU3RydWN0dXJlLCBPcEluZm8obV9ncmFwaC5hZGRTdHJ1Y3R1cmVTZXQocHJl
dmlvdXNTdHJ1Y3R1cmUpKSwgYmFzZSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIWRp
cmVjdCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciAoV3JpdGVCYXJyaWVyPFN0
cnVjdHVyZT4qIGl0ID0gc3RydWN0dXJlQ2hhaW4tPmhlYWQoKTsgKml0OyArK2l0KSB7CkBAIC0x
ODExLDcgKzE4MzgsOSBAQCBib29sIEJ5dGVDb2RlUGFyc2VyOjpwYXJzZUJsb2NrKHVuc2lnbmVk
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChwcm90b3R5cGUuaXNOdWxsKCkp
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgQVNTRVJUKHByb3RvdHlwZS5pc0NlbGwoKSk7Ci0gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkZFRvR3JhcGgoQ2hlY2tTdHJ1Y3R1cmUsIE9w
SW5mbyhtX2dyYXBoLmFkZFN0cnVjdHVyZVNldChwcm90b3R5cGUuYXNDZWxsKCktPnN0cnVjdHVy
ZSgpKSksIGNlbGxDb25zdGFudChwcm90b3R5cGUuYXNDZWxsKCkpKTsKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgcGluQ2VsbChwcm90b3R5cGUuYXNDZWxsKCkpOworICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBwaW5DZWxsKGl0LT5nZXQoKSk7CisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGFkZFRvR3JhcGgoQ2hlY2tTdHJ1Y3R1cmUsIE9wSW5mbyhtX2dy
YXBoLmFkZFN0cnVjdHVyZVNldChpdC0+Z2V0KCkpKSwgY2VsbENvbnN0YW50KHByb3RvdHlwZS5h
c0NlbGwoKSkpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAg
ICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgIGFkZFRvR3JhcGgoUHV0U3RydWN0
dXJlLCBPcEluZm8obV9ncmFwaC5hZGRTdHJ1Y3R1cmVUcmFuc2l0aW9uRGF0YShTdHJ1Y3R1cmVU
cmFuc2l0aW9uRGF0YShwcmV2aW91c1N0cnVjdHVyZSwgbmV3U3RydWN0dXJlKSkpLCBiYXNlKTsK
</data>
<flag name="review"
          id="113835"
          type_id="1"
          status="-"
          setter="fpizlo"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>115051</attachid>
            <date>2011-11-14 16:02:38 -0800</date>
            <delta_ts>2011-11-14 16:38:55 -0800</delta_ts>
            <desc>the patch</desc>
            <filename>dfgpincell_patch_2.diff</filename>
            <type>text/plain</type>
            <size>6621</size>
            <attacher name="Filip Pizlo">fpizlo</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMTAwMjAxKQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIzIEBA
CisyMDExLTExLTE0ICBGaWxpcCBQaXpsbyAgPGZwaXpsb0BhcHBsZS5jb20+CisKKyAgICAgICAg
REZHJ3MgaW5saW5lIHJlZmVyZW5jZXMgdG8gb2JqZWN0cyBzaG91bGQgYmUgdHJhY2tlZAorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzIzMTMKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKyAgICAgICAgCisgICAgICAgIEFkZGVk
IGEgcGluQ2VsbCgpIG1ldGhvZCBpbiB0aGUgcGFyc2VyIHRoYXQgY3VycmVudGx5IGNyZWF0ZXMg
YQorICAgICAgICBkdW1teSBjb25zdGFudCBpbiBDb2RlQmxvY2suIEFkZGVkIGNhbGxzIHRvIHBp
bkNlbGwoKSB3aGVyZXZlciB0aGUKKyAgICAgICAgREZHIHdvdWxkIGlubGluZSBhIGNvbnN0YW50
IHJlZmVyZW5jZSB0aGF0IHRoZSBvcmlnaW5hbCBjb2RlIHdvdWxkCisgICAgICAgIG5vdCBoYXZl
IHJlZmVycmVkIHRvLgorICAgICAgICAKKyAgICAgICAgKiBkZmcvREZHQnl0ZUNvZGVQYXJzZXIu
Y3BwOgorICAgICAgICAoSlNDOjpERkc6OkJ5dGVDb2RlUGFyc2VyOjpnZXRDZWxsQ29uc3RhbnRJ
bmRleCk6CisgICAgICAgIChKU0M6OkRGRzo6Qnl0ZUNvZGVQYXJzZXI6OnBpbkNlbGwpOgorICAg
ICAgICAoSlNDOjpERkc6OkJ5dGVDb2RlUGFyc2VyOjpjZWxsQ29uc3RhbnQpOgorICAgICAgICAo
SlNDOjpERkc6OkJ5dGVDb2RlUGFyc2VyOjpoYW5kbGVDYWxsKToKKyAgICAgICAgKEpTQzo6REZH
OjpCeXRlQ29kZVBhcnNlcjo6aGFuZGxlSW5saW5pbmcpOgorICAgICAgICAoSlNDOjpERkc6OkJ5
dGVDb2RlUGFyc2VyOjpwYXJzZUJsb2NrKToKKwogMjAxMS0xMS0xNCAgR2VvZmZyZXkgR2FyZW4g
IDxnZ2FyZW5AYXBwbGUuY29tPgogCiAgICAgICAgIEEgbGl0dGxlIGJpdCBvZiBmdW5jdGlvbiBj
YWxsIGNsZWFudXAKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHQnl0ZUNvZGVQ
YXJzZXIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHQnl0
ZUNvZGVQYXJzZXIuY3BwCShyZXZpc2lvbiAxMDAyMDEpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENv
cmUvZGZnL0RGR0J5dGVDb2RlUGFyc2VyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNTA3LDExICs1
MDcsMTEgQEAgcHJpdmF0ZToKICAgICAgICAgcmV0dXJuIGdldEpTQ29uc3RhbnQobV9jb25zdGFu
dE5hTik7CiAgICAgfQogICAgIAotICAgIE5vZGVJbmRleCBjZWxsQ29uc3RhbnQoSlNDZWxsKiBj
ZWxsKQorICAgIHVuc2lnbmVkIGdldENlbGxDb25zdGFudEluZGV4KEpTQ2VsbCogY2VsbCkKICAg
ICB7CiAgICAgICAgIEhhc2hNYXA8SlNDZWxsKiwgdW5zaWduZWQ+OjppdGVyYXRvciBpdGVyID0g
bV9jZWxsQ29uc3RhbnRzLmZpbmQoY2VsbCk7CiAgICAgICAgIGlmIChpdGVyICE9IG1fY2VsbENv
bnN0YW50cy5lbmQoKSkKLSAgICAgICAgICAgIHJldHVybiBnZXRKU0NvbnN0YW50KGl0ZXItPnNl
Y29uZCk7CisgICAgICAgICAgICByZXR1cm4gaXRlci0+c2Vjb25kOwogICAgICAgICAKICAgICAg
ICAgbV9jb2RlQmxvY2stPmFkZENvbnN0YW50KGNlbGwpOwogICAgICAgICBtX2NvbnN0YW50cy5h
cHBlbmQoQ29uc3RhbnRSZWNvcmQoKSk7CkBAIC01MTksNyArNTE5LDE5IEBAIHByaXZhdGU6CiAg
ICAgICAgIAogICAgICAgICBtX2NlbGxDb25zdGFudHMuYWRkKGNlbGwsIG1fY29kZUJsb2NrLT5u
dW1iZXJPZkNvbnN0YW50UmVnaXN0ZXJzKCkgLSAxKTsKICAgICAgICAgCi0gICAgICAgIHJldHVy
biBnZXRKU0NvbnN0YW50KG1fY29kZUJsb2NrLT5udW1iZXJPZkNvbnN0YW50UmVnaXN0ZXJzKCkg
LSAxKTsKKyAgICAgICAgcmV0dXJuIG1fY29kZUJsb2NrLT5udW1iZXJPZkNvbnN0YW50UmVnaXN0
ZXJzKCkgLSAxOworICAgIH0KKyAgICAKKyAgICB2b2lkIHBpbkNlbGwoSlNDZWxsKiBjZWxsKQor
ICAgIHsKKyAgICAgICAgaWYgKCFjZWxsKQorICAgICAgICAgICAgcmV0dXJuOworICAgICAgICBn
ZXRDZWxsQ29uc3RhbnRJbmRleChjZWxsKTsKKyAgICB9CisgICAgCisgICAgTm9kZUluZGV4IGNl
bGxDb25zdGFudChKU0NlbGwqIGNlbGwpCisgICAgeworICAgICAgICByZXR1cm4gZ2V0SlNDb25z
dGFudChnZXRDZWxsQ29uc3RhbnRJbmRleChjZWxsKSk7CiAgICAgfQogICAgIAogICAgIENvZGVP
cmlnaW4gY3VycmVudENvZGVPcmlnaW4oKQpAQCAtOTA1LDggKzkxNywxMCBAQCB2b2lkIEJ5dGVD
b2RlUGFyc2VyOjpoYW5kbGVDYWxsKEludGVycHJlCiAgICAgICAgIH0KICAgICAgICAgICAgICAg
ICAKICAgICAgICAgaWYgKGludHJpbnNpYyAhPSBOb0ludHJpbnNpYykgewotICAgICAgICAgICAg
aWYgKCFjZXJ0YWluQWJvdXRFeHBlY3RlZEZ1bmN0aW9uKQorICAgICAgICAgICAgaWYgKCFjZXJ0
YWluQWJvdXRFeHBlY3RlZEZ1bmN0aW9uKSB7CisgICAgICAgICAgICAgICAgcGluQ2VsbChleHBl
Y3RlZEZ1bmN0aW9uKTsKICAgICAgICAgICAgICAgICBhZGRUb0dyYXBoKENoZWNrRnVuY3Rpb24s
IE9wSW5mbyhleHBlY3RlZEZ1bmN0aW9uKSwgY2FsbFRhcmdldCk7CisgICAgICAgICAgICB9CiAg
ICAgICAgICAgICAKICAgICAgICAgICAgIGlmIChoYW5kbGVJbnRyaW5zaWModXNlc1Jlc3VsdCwg
cmVzdWx0T3BlcmFuZCwgaW50cmluc2ljLCBmaXJzdEFyZywgbGFzdEFyZywgcHJlZGljdGlvbikp
IHsKICAgICAgICAgICAgICAgICBpZiAoIWNlcnRhaW5BYm91dEV4cGVjdGVkRnVuY3Rpb24pIHsK
QEAgLTk3Myw4ICs5ODcsMTAgQEAgYm9vbCBCeXRlQ29kZVBhcnNlcjo6aGFuZGxlSW5saW5pbmco
Ym9vbAogICAgIC8vIE5vdyB3ZSBrbm93IHdpdGhvdXQgYSBkb3VidCB0aGF0IHdlIGFyZSBjb21t
aXR0ZWQgdG8gaW5saW5pbmcuIFNvIGJlZ2luIHRoZSBwcm9jZXNzCiAgICAgLy8gYnkgY2hlY2tp
bmcgdGhlIGNhbGxlZSAoaWYgbmVjZXNzYXJ5KSBhbmQgbWFraW5nIHN1cmUgdGhhdCBhcmd1bWVu
dHMgYW5kIHRoZSBjYWxsZWUKICAgICAvLyBhcmUgZmx1c2hlZC4KLSAgICBpZiAoIWNlcnRhaW5B
Ym91dEV4cGVjdGVkRnVuY3Rpb24pCisgICAgaWYgKCFjZXJ0YWluQWJvdXRFeHBlY3RlZEZ1bmN0
aW9uKSB7CisgICAgICAgIHBpbkNlbGwoZXhwZWN0ZWRGdW5jdGlvbik7CiAgICAgICAgIGFkZFRv
R3JhcGgoQ2hlY2tGdW5jdGlvbiwgT3BJbmZvKGV4cGVjdGVkRnVuY3Rpb24pLCBjYWxsVGFyZ2V0
Tm9kZUluZGV4KTsKKyAgICB9CiAgICAgCiAgICAgLy8gRklYTUU6IERvbid0IGZsdXNoIGNvbnN0
YW50cyEKICAgICAKQEAgLTE2MzUsNiArMTY1MSwxMSBAQCBib29sIEJ5dGVDb2RlUGFyc2VyOjpw
YXJzZUJsb2NrKHVuc2lnbmVkCiAgICAgICAgICAgICBpZiAobWV0aG9kQ2FsbC5zZWVuICYmICEh
bWV0aG9kQ2FsbC5jYWNoZWRTdHJ1Y3R1cmUgJiYgIXN0dWJJbmZvLnNlZW4pIHsKICAgICAgICAg
ICAgICAgICAvLyBJdCdzIG1vbm9tb3JwaGljIGFzIGZhciBhcyB3ZSBjYW4gdGVsbCwgc2luY2Ug
dGhlIG1ldGhvZF9jaGVjayB3YXMgbGlua2VkCiAgICAgICAgICAgICAgICAgLy8gYnV0IHRoZSBz
bG93IHBhdGggKGkuZS4gdGhlIG5vcm1hbCBnZXRfYnlfaWQpIG5ldmVyIGZpcmVkLgorCisgICAg
ICAgICAgICAgICAgcGluQ2VsbChtZXRob2RDYWxsLmNhY2hlZFN0cnVjdHVyZS5nZXQoKSk7Cisg
ICAgICAgICAgICAgICAgcGluQ2VsbChtZXRob2RDYWxsLmNhY2hlZFByb3RvdHlwZVN0cnVjdHVy
ZS5nZXQoKSk7CisgICAgICAgICAgICAgICAgcGluQ2VsbChtZXRob2RDYWxsLmNhY2hlZEZ1bmN0
aW9uLmdldCgpKTsKKyAgICAgICAgICAgICAgICBwaW5DZWxsKG1ldGhvZENhbGwuY2FjaGVkUHJv
dG90eXBlLmdldCgpKTsKICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgIE5vZGVJbmRleCBj
aGVja01ldGhvZCA9IGFkZFRvR3JhcGgoQ2hlY2tNZXRob2QsIE9wSW5mbyhpZGVudGlmaWVyKSwg
T3BJbmZvKG1fZ3JhcGgubV9tZXRob2RDaGVja0RhdGEuc2l6ZSgpKSwgYmFzZSk7CiAgICAgICAg
ICAgICAgICAgc2V0KGdldEluc3RydWN0aW9uWzFdLnUub3BlcmFuZCwgY2hlY2tNZXRob2QpOwpA
QCAtMTc0NSw2ICsxNzY2LDkgQEAgYm9vbCBCeXRlQ29kZVBhcnNlcjo6cGFyc2VCbG9jayh1bnNp
Z25lZAogICAgICAgICAgICAgICAgIGlmIChwcmVkaWN0aW9uID09IFByZWRpY3ROb25lKQogICAg
ICAgICAgICAgICAgICAgICBhZGRUb0dyYXBoKEZvcmNlT1NSRXhpdCk7CiAgICAgICAgICAgICAg
ICAgCisgICAgICAgICAgICAgICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IHN0cnVjdHVyZVNl
dC5zaXplKCk7ICsraSkKKyAgICAgICAgICAgICAgICAgICAgcGluQ2VsbChzdHJ1Y3R1cmVTZXRb
aV0pOworICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgIGFkZFRvR3JhcGgoQ2hlY2tT
dHJ1Y3R1cmUsIE9wSW5mbyhtX2dyYXBoLmFkZFN0cnVjdHVyZVNldChzdHJ1Y3R1cmVTZXQpKSwg
YmFzZSk7CiAgICAgICAgICAgICAgICAgc2V0KGN1cnJlbnRJbnN0cnVjdGlvblsxXS51Lm9wZXJh
bmQsIGFkZFRvR3JhcGgoR2V0QnlPZmZzZXQsIE9wSW5mbyhtX2dyYXBoLm1fc3RvcmFnZUFjY2Vz
c0RhdGEuc2l6ZSgpKSwgT3BJbmZvKHByZWRpY3Rpb24pLCBhZGRUb0dyYXBoKEdldFByb3BlcnR5
U3RvcmFnZSwgYmFzZSkpKTsKICAgICAgICAgICAgICAgICAKQEAgLTE3NzgsNiArMTgwMiw3IEBA
IGJvb2wgQnl0ZUNvZGVQYXJzZXI6OnBhcnNlQmxvY2sodW5zaWduZWQKICAgICAgICAgICAgICAg
ICAgICAgc2l6ZV90IG9mZnNldCA9IHN0cnVjdHVyZS0+Z2V0KCptX2dsb2JhbERhdGEsIGlkZW50
aWZpZXIpOwogICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgaWYgKG9m
ZnNldCAhPSBub3RGb3VuZCkgeworICAgICAgICAgICAgICAgICAgICAgICAgcGluQ2VsbChzdHJ1
Y3R1cmUpOwogICAgICAgICAgICAgICAgICAgICAgICAgYWRkVG9HcmFwaChDaGVja1N0cnVjdHVy
ZSwgT3BJbmZvKG1fZ3JhcGguYWRkU3RydWN0dXJlU2V0KHN0cnVjdHVyZSkpLCBiYXNlKTsKICAg
ICAgICAgICAgICAgICAgICAgICAgIGFkZFRvR3JhcGgoUHV0QnlPZmZzZXQsIE9wSW5mbyhtX2dy
YXBoLm1fc3RvcmFnZUFjY2Vzc0RhdGEuc2l6ZSgpKSwgYmFzZSwgYWRkVG9HcmFwaChHZXRQcm9w
ZXJ0eVN0b3JhZ2UsIGJhc2UpLCB2YWx1ZSk7CiAgICAgICAgICAgICAgICAgICAgICAgICAKQEAg
LTE4MDQsNiArMTgyOSw4IEBAIGJvb2wgQnl0ZUNvZGVQYXJzZXI6OnBhcnNlQmxvY2sodW5zaWdu
ZWQKICAgICAgICAgICAgICAgICAgICAgc2l6ZV90IG9mZnNldCA9IG5ld1N0cnVjdHVyZS0+Z2V0
KCptX2dsb2JhbERhdGEsIGlkZW50aWZpZXIpOwogICAgICAgICAgICAgICAgICAgICAKICAgICAg
ICAgICAgICAgICAgICAgaWYgKG9mZnNldCAhPSBub3RGb3VuZCkgeworICAgICAgICAgICAgICAg
ICAgICAgICAgcGluQ2VsbChwcmV2aW91c1N0cnVjdHVyZSk7CisgICAgICAgICAgICAgICAgICAg
ICAgICBwaW5DZWxsKG5ld1N0cnVjdHVyZSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBhZGRU
b0dyYXBoKENoZWNrU3RydWN0dXJlLCBPcEluZm8obV9ncmFwaC5hZGRTdHJ1Y3R1cmVTZXQocHJl
dmlvdXNTdHJ1Y3R1cmUpKSwgYmFzZSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIWRp
cmVjdCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciAoV3JpdGVCYXJyaWVyPFN0
cnVjdHVyZT4qIGl0ID0gc3RydWN0dXJlQ2hhaW4tPmhlYWQoKTsgKml0OyArK2l0KSB7CkBAIC0x
ODExLDYgKzE4MzgsOCBAQCBib29sIEJ5dGVDb2RlUGFyc2VyOjpwYXJzZUJsb2NrKHVuc2lnbmVk
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChwcm90b3R5cGUuaXNOdWxsKCkp
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgQVNTRVJUKHByb3RvdHlwZS5pc0NlbGwoKSk7CisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBpbkNlbGwocHJvdG90eXBlLmFzQ2VsbCgpKTsK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGluQ2VsbChwcm90b3R5cGUuYXNDZWxs
KCktPnN0cnVjdHVyZSgpKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkVG9H
cmFwaChDaGVja1N0cnVjdHVyZSwgT3BJbmZvKG1fZ3JhcGguYWRkU3RydWN0dXJlU2V0KHByb3Rv
dHlwZS5hc0NlbGwoKS0+c3RydWN0dXJlKCkpKSwgY2VsbENvbnN0YW50KHByb3RvdHlwZS5hc0Nl
bGwoKSkpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAg
ICAgICAgIH0K
</data>
<flag name="review"
          id="113858"
          type_id="1"
          status="+"
          setter="barraclough"
    />
          </attachment>
      

    </bug>

</bugzilla>