<?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>86959</bug_id>
          
          <creation_ts>2012-05-20 01:42:04 -0700</creation_ts>
          <short_desc>DFG should not do unnecessary indirections when storing to objects</short_desc>
          <delta_ts>2012-05-23 22:50:42 -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>
          
          
          <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>628558</commentid>
    <comment_count>0</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2012-05-20 01:42:04 -0700</bug_when>
    <thetext>Patch forthcoming.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>628559</commentid>
    <comment_count>1</comment_count>
      <attachid>142896</attachid>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2012-05-20 01:44:27 -0700</bug_when>
    <thetext>Created attachment 142896
the patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>629530</commentid>
    <comment_count>2</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2012-05-21 14:51:33 -0700</bug_when>
    <thetext>Landed in http://trac.webkit.org/changeset/117819</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>632434</commentid>
    <comment_count>3</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2012-05-23 22:50:42 -0700</bug_when>
    <thetext>Merged in http://trac.webkit.org/changeset/118324</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>142896</attachid>
            <date>2012-05-20 01:44:27 -0700</date>
            <delta_ts>2012-05-20 05:52:06 -0700</delta_ts>
            <desc>the patch</desc>
            <filename>fixputbyoffset_patch_1.diff</filename>
            <type>text/plain</type>
            <size>6456</size>
            <attacher name="Filip Pizlo">fpizlo</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMTE3NzA1KQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE5IEBA
CisyMDEyLTA1LTIwICBGaWxpcCBQaXpsbyAgPGZwaXpsb0BhcHBsZS5jb20+CisKKyAgICAgICAg
REZHIHNob3VsZCBub3QgZG8gdW5uZWNlc3NhcnkgaW5kaXJlY3Rpb25zIHdoZW4gc3RvcmluZyB0
byBvYmplY3RzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD04Njk1OQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
ICogZGZnL0RGR0J5dGVDb2RlUGFyc2VyLmNwcDoKKyAgICAgICAgKEpTQzo6REZHOjpCeXRlQ29k
ZVBhcnNlcjo6cGFyc2VCbG9jayk6CisgICAgICAgICogZGZnL0RGR0NTRVBoYXNlLmNwcDoKKyAg
ICAgICAgKEpTQzo6REZHOjpDU0VQaGFzZTo6Z2V0QnlPZmZzZXRMb2FkRWxpbWluYXRpb24pOgor
ICAgICAgICAqIGRmZy9ERkdTcGVjdWxhdGl2ZUpJVDMyXzY0LmNwcDoKKyAgICAgICAgKEpTQzo6
REZHOjpTcGVjdWxhdGl2ZUpJVDo6Y29tcGlsZSk6CisgICAgICAgICogZGZnL0RGR1NwZWN1bGF0
aXZlSklUNjQuY3BwOgorICAgICAgICAoSlNDOjpERkc6OlNwZWN1bGF0aXZlSklUOjpjb21waWxl
KToKKwogMjAxMi0wNS0xNyAgRmlsaXAgUGl6bG8gIDxmcGl6bG9AYXBwbGUuY29tPgogCiAgICAg
ICAgIEZpeCBhIHR5cG8gdGhhdCBHZW9mZiBub3RpY2VkIGJ1dCB0aGF0IEkgZm9yZ290IHRvIGZp
eCBpbiB0aGUgbGFzdCBjb21taXQuCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RG
R0J5dGVDb2RlUGFyc2VyLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUv
ZGZnL0RGR0J5dGVDb2RlUGFyc2VyLmNwcAkocmV2aXNpb24gMTE3NzA1KQorKysgU291cmNlL0ph
dmFTY3JpcHRDb3JlL2RmZy9ERkdCeXRlQ29kZVBhcnNlci5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTIwNDksMTAgKzIwNDksMjAgQEAgYm9vbCBCeXRlQ29kZVBhcnNlcjo6cGFyc2VCbG9jayh1bnNp
Z25lZAogICAgICAgICAgICAgCiAgICAgICAgICAgICBpZiAoIWhhc0V4aXRTaXRlICYmIHB1dEJ5
SWRTdGF0dXMuaXNTaW1wbGVSZXBsYWNlKCkpIHsKICAgICAgICAgICAgICAgICBhZGRUb0dyYXBo
KENoZWNrU3RydWN0dXJlLCBPcEluZm8obV9ncmFwaC5hZGRTdHJ1Y3R1cmVTZXQocHV0QnlJZFN0
YXR1cy5vbGRTdHJ1Y3R1cmUoKSkpLCBiYXNlKTsKLSAgICAgICAgICAgICAgICBhZGRUb0dyYXBo
KFB1dEJ5T2Zmc2V0LCBPcEluZm8obV9ncmFwaC5tX3N0b3JhZ2VBY2Nlc3NEYXRhLnNpemUoKSks
IGJhc2UsIGFkZFRvR3JhcGgoR2V0UHJvcGVydHlTdG9yYWdlLCBiYXNlKSwgdmFsdWUpOworICAg
ICAgICAgICAgICAgIHNpemVfdCBvZmZzZXRPZmZzZXQ7CisgICAgICAgICAgICAgICAgTm9kZUlu
ZGV4IHByb3BlcnR5U3RvcmFnZTsKKyAgICAgICAgICAgICAgICBpZiAocHV0QnlJZFN0YXR1cy5v
bGRTdHJ1Y3R1cmUoKS0+aXNVc2luZ0lubGluZVN0b3JhZ2UoKSkgeworICAgICAgICAgICAgICAg
ICAgICBwcm9wZXJ0eVN0b3JhZ2UgPSBiYXNlOworICAgICAgICAgICAgICAgICAgICBBU1NFUlQo
IShzaXplb2YoSlNPYmplY3QpICUgc2l6ZW9mKEVuY29kZWRKU1ZhbHVlKSkpOworICAgICAgICAg
ICAgICAgICAgICBvZmZzZXRPZmZzZXQgPSBzaXplb2YoSlNPYmplY3QpIC8gc2l6ZW9mKEVuY29k
ZWRKU1ZhbHVlKTsKKyAgICAgICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgICAgICAg
ICBwcm9wZXJ0eVN0b3JhZ2UgPSBhZGRUb0dyYXBoKEdldFByb3BlcnR5U3RvcmFnZSwgYmFzZSk7
CisgICAgICAgICAgICAgICAgICAgIG9mZnNldE9mZnNldCA9IDA7CisgICAgICAgICAgICAgICAg
fQorICAgICAgICAgICAgICAgIGFkZFRvR3JhcGgoUHV0QnlPZmZzZXQsIE9wSW5mbyhtX2dyYXBo
Lm1fc3RvcmFnZUFjY2Vzc0RhdGEuc2l6ZSgpKSwgcHJvcGVydHlTdG9yYWdlLCBiYXNlLCB2YWx1
ZSk7CiAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgU3RvcmFnZUFjY2Vzc0RhdGEg
c3RvcmFnZUFjY2Vzc0RhdGE7Ci0gICAgICAgICAgICAgICAgc3RvcmFnZUFjY2Vzc0RhdGEub2Zm
c2V0ID0gcHV0QnlJZFN0YXR1cy5vZmZzZXQoKTsKKyAgICAgICAgICAgICAgICBzdG9yYWdlQWNj
ZXNzRGF0YS5vZmZzZXQgPSBwdXRCeUlkU3RhdHVzLm9mZnNldCgpICsgb2Zmc2V0T2Zmc2V0Owog
ICAgICAgICAgICAgICAgIHN0b3JhZ2VBY2Nlc3NEYXRhLmlkZW50aWZpZXJOdW1iZXIgPSBpZGVu
dGlmaWVyTnVtYmVyOwogICAgICAgICAgICAgICAgIG1fZ3JhcGgubV9zdG9yYWdlQWNjZXNzRGF0
YS5hcHBlbmQoc3RvcmFnZUFjY2Vzc0RhdGEpOwogICAgICAgICAgICAgfSBlbHNlIGlmICghaGFz
RXhpdFNpdGUKQEAgLTIwOTEsMTUgKzIxMDEsMjUgQEAgYm9vbCBCeXRlQ29kZVBhcnNlcjo6cGFy
c2VCbG9jayh1bnNpZ25lZAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwdXRCeUlk
U3RhdHVzLm5ld1N0cnVjdHVyZSgpKSkpLAogICAgICAgICAgICAgICAgICAgICBiYXNlKTsKICAg
ICAgICAgICAgICAgICAKKyAgICAgICAgICAgICAgICBzaXplX3Qgb2Zmc2V0T2Zmc2V0OworICAg
ICAgICAgICAgICAgIE5vZGVJbmRleCBwcm9wZXJ0eVN0b3JhZ2U7CisgICAgICAgICAgICAgICAg
aWYgKHB1dEJ5SWRTdGF0dXMubmV3U3RydWN0dXJlKCktPmlzVXNpbmdJbmxpbmVTdG9yYWdlKCkp
IHsKKyAgICAgICAgICAgICAgICAgICAgcHJvcGVydHlTdG9yYWdlID0gYmFzZTsKKyAgICAgICAg
ICAgICAgICAgICAgQVNTRVJUKCEoc2l6ZW9mKEpTT2JqZWN0KSAlIHNpemVvZihFbmNvZGVkSlNW
YWx1ZSkpKTsKKyAgICAgICAgICAgICAgICAgICAgb2Zmc2V0T2Zmc2V0ID0gc2l6ZW9mKEpTT2Jq
ZWN0KSAvIHNpemVvZihFbmNvZGVkSlNWYWx1ZSk7CisgICAgICAgICAgICAgICAgfSBlbHNlIHsK
KyAgICAgICAgICAgICAgICAgICAgcHJvcGVydHlTdG9yYWdlID0gYWRkVG9HcmFwaChHZXRQcm9w
ZXJ0eVN0b3JhZ2UsIGJhc2UpOworICAgICAgICAgICAgICAgICAgICBvZmZzZXRPZmZzZXQgPSAw
OworICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICBhZGRUb0dyYXBoKAogICAgICAg
ICAgICAgICAgICAgICBQdXRCeU9mZnNldCwKICAgICAgICAgICAgICAgICAgICAgT3BJbmZvKG1f
Z3JhcGgubV9zdG9yYWdlQWNjZXNzRGF0YS5zaXplKCkpLAorICAgICAgICAgICAgICAgICAgICBw
cm9wZXJ0eVN0b3JhZ2UsCiAgICAgICAgICAgICAgICAgICAgIGJhc2UsCi0gICAgICAgICAgICAg
ICAgICAgIGFkZFRvR3JhcGgoR2V0UHJvcGVydHlTdG9yYWdlLCBiYXNlKSwKICAgICAgICAgICAg
ICAgICAgICAgdmFsdWUpOwogICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgIFN0b3Jh
Z2VBY2Nlc3NEYXRhIHN0b3JhZ2VBY2Nlc3NEYXRhOwotICAgICAgICAgICAgICAgIHN0b3JhZ2VB
Y2Nlc3NEYXRhLm9mZnNldCA9IHB1dEJ5SWRTdGF0dXMub2Zmc2V0KCk7CisgICAgICAgICAgICAg
ICAgc3RvcmFnZUFjY2Vzc0RhdGEub2Zmc2V0ID0gcHV0QnlJZFN0YXR1cy5vZmZzZXQoKSArIG9m
ZnNldE9mZnNldDsKICAgICAgICAgICAgICAgICBzdG9yYWdlQWNjZXNzRGF0YS5pZGVudGlmaWVy
TnVtYmVyID0gaWRlbnRpZmllck51bWJlcjsKICAgICAgICAgICAgICAgICBtX2dyYXBoLm1fc3Rv
cmFnZUFjY2Vzc0RhdGEuYXBwZW5kKHN0b3JhZ2VBY2Nlc3NEYXRhKTsKICAgICAgICAgICAgIH0g
ZWxzZSB7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0NTRVBoYXNlLmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0NTRVBoYXNlLmNwcAko
cmV2aXNpb24gMTE3NzA1KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdDU0VQaGFz
ZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTMwNyw3ICszMDcsNyBAQCBwcml2YXRlOgogICAgIHsK
ICAgICAgICAgZm9yICh1bnNpZ25lZCBpID0gbV9pbmRleEluQmxvY2s7IGktLTspIHsKICAgICAg
ICAgICAgIE5vZGVJbmRleCBpbmRleCA9IG1fY3VycmVudEJsb2NrLT5hdChpKTsKLSAgICAgICAg
ICAgIGlmIChpbmRleCA9PSBjaGlsZDEpIAorICAgICAgICAgICAgaWYgKGluZGV4ID09IGNoaWxk
MSkKICAgICAgICAgICAgICAgICBicmVhazsKIAogICAgICAgICAgICAgTm9kZSYgbm9kZSA9IG1f
Z3JhcGhbaW5kZXhdOwpAQCAtMzIwLDcgKzMyMCw3IEBAIHByaXZhdGU6CiAgICAgICAgICAgICAg
ICAgCiAgICAgICAgICAgICBjYXNlIFB1dEJ5T2Zmc2V0OgogICAgICAgICAgICAgICAgIGlmICht
X2dyYXBoLm1fc3RvcmFnZUFjY2Vzc0RhdGFbbm9kZS5zdG9yYWdlQWNjZXNzRGF0YUluZGV4KCld
LmlkZW50aWZpZXJOdW1iZXIgPT0gaWRlbnRpZmllck51bWJlcikgewotICAgICAgICAgICAgICAg
ICAgICBpZiAobm9kZS5jaGlsZDIoKSA9PSBjaGlsZDEpCisgICAgICAgICAgICAgICAgICAgIGlm
IChub2RlLmNoaWxkMSgpID09IGNoaWxkMSkgLy8gTXVzdCBiZSBzYW1lIHByb3BlcnR5IHN0b3Jh
Z2UuCiAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbm9kZS5jaGlsZDMoKS5pbmRleCgp
OwogICAgICAgICAgICAgICAgICAgICByZXR1cm4gTm9Ob2RlOwogICAgICAgICAgICAgICAgIH0K
SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHU3BlY3VsYXRpdmVKSVQzMl82NC5j
cHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdTcGVjdWxhdGl2
ZUpJVDMyXzY0LmNwcAkocmV2aXNpb24gMTE3NzA1KQorKysgU291cmNlL0phdmFTY3JpcHRDb3Jl
L2RmZy9ERkdTcGVjdWxhdGl2ZUpJVDMyXzY0LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzUzNyw5
ICszNTM3LDkgQEAgdm9pZCBTcGVjdWxhdGl2ZUpJVDo6Y29tcGlsZShOb2RlJiBub2RlKQogICAg
ICAgICAKICAgICBjYXNlIFB1dEJ5T2Zmc2V0OiB7CiAjaWYgRU5BQkxFKEdHQykgfHwgRU5BQkxF
KFdSSVRFX0JBUlJJRVJfUFJPRklMSU5HKQotICAgICAgICBTcGVjdWxhdGVDZWxsT3BlcmFuZCBi
YXNlKHRoaXMsIG5vZGUuY2hpbGQxKCkpOworICAgICAgICBTcGVjdWxhdGVDZWxsT3BlcmFuZCBi
YXNlKHRoaXMsIG5vZGUuY2hpbGQyKCkpOwogI2VuZGlmCi0gICAgICAgIFN0b3JhZ2VPcGVyYW5k
IHN0b3JhZ2UodGhpcywgbm9kZS5jaGlsZDIoKSk7CisgICAgICAgIFN0b3JhZ2VPcGVyYW5kIHN0
b3JhZ2UodGhpcywgbm9kZS5jaGlsZDEoKSk7CiAgICAgICAgIEpTVmFsdWVPcGVyYW5kIHZhbHVl
KHRoaXMsIG5vZGUuY2hpbGQzKCkpOwogCiAgICAgICAgIEdQUlJlZyBzdG9yYWdlR1BSID0gc3Rv
cmFnZS5ncHIoKTsKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHU3BlY3VsYXRp
dmVKSVQ2NC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdT
cGVjdWxhdGl2ZUpJVDY0LmNwcAkocmV2aXNpb24gMTE3NzA1KQorKysgU291cmNlL0phdmFTY3Jp
cHRDb3JlL2RmZy9ERkdTcGVjdWxhdGl2ZUpJVDY0LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzUz
OCw5ICszNTM4LDkgQEAgdm9pZCBTcGVjdWxhdGl2ZUpJVDo6Y29tcGlsZShOb2RlJiBub2RlKQog
ICAgICAgICAKICAgICBjYXNlIFB1dEJ5T2Zmc2V0OiB7CiAjaWYgRU5BQkxFKEdHQykgfHwgRU5B
QkxFKFdSSVRFX0JBUlJJRVJfUFJPRklMSU5HKQotICAgICAgICBTcGVjdWxhdGVDZWxsT3BlcmFu
ZCBiYXNlKHRoaXMsIG5vZGUuY2hpbGQxKCkpOworICAgICAgICBTcGVjdWxhdGVDZWxsT3BlcmFu
ZCBiYXNlKHRoaXMsIG5vZGUuY2hpbGQyKCkpOwogI2VuZGlmCi0gICAgICAgIFN0b3JhZ2VPcGVy
YW5kIHN0b3JhZ2UodGhpcywgbm9kZS5jaGlsZDIoKSk7CisgICAgICAgIFN0b3JhZ2VPcGVyYW5k
IHN0b3JhZ2UodGhpcywgbm9kZS5jaGlsZDEoKSk7CiAgICAgICAgIEpTVmFsdWVPcGVyYW5kIHZh
bHVlKHRoaXMsIG5vZGUuY2hpbGQzKCkpOwogCiAgICAgICAgIEdQUlJlZyBzdG9yYWdlR1BSID0g
c3RvcmFnZS5ncHIoKTsK
</data>
<flag name="review"
          id="149321"
          type_id="1"
          status="+"
          setter="oliver"
    />
          </attachment>
      

    </bug>

</bugzilla>