<?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>182755</bug_id>
          
          <creation_ts>2018-02-13 17:02:24 -0800</creation_ts>
          <short_desc>putDirectIndexSlowOrBeyondVectorLength needs to convert to dictionary indexing mode always if attributes are present</short_desc>
          <delta_ts>2018-02-13 21:07:13 -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>WebKit 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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Saam Barati">saam</reporter>
          <assigned_to name="Saam Barati">saam</assigned_to>
          <cc>benjamin</cc>
    
    <cc>commit-queue</cc>
    
    <cc>fpizlo</cc>
    
    <cc>ggaren</cc>
    
    <cc>gskachkov</cc>
    
    <cc>jfbastien</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>rmorisset</cc>
    
    <cc>ticaiolima</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>ysuzuki</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1398859</commentid>
    <comment_count>0</comment_count>
    <who name="Saam Barati">saam</who>
    <bug_when>2018-02-13 17:02:24 -0800</bug_when>
    <thetext>Right now, it just checks if the index being stored to is less than vector length. That makes no sense. We always need to convert to dictionary indexing mode if we&apos;re dealing w/ setters/getters/readonly props.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1398860</commentid>
    <comment_count>1</comment_count>
    <who name="Saam Barati">saam</who>
    <bug_when>2018-02-13 17:03:10 -0800</bug_when>
    <thetext>&lt;rdar://problem/37080864&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1398865</commentid>
    <comment_count>2</comment_count>
      <attachid>333751</attachid>
    <who name="Saam Barati">saam</who>
    <bug_when>2018-02-13 17:09:34 -0800</bug_when>
    <thetext>Created attachment 333751
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1398878</commentid>
    <comment_count>3</comment_count>
      <attachid>333751</attachid>
    <who name="Keith Miller">keith_miller</who>
    <bug_when>2018-02-13 17:41:56 -0800</bug_when>
    <thetext>Comment on attachment 333751
patch

r=me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1398943</commentid>
    <comment_count>4</comment_count>
      <attachid>333751</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-02-13 21:07:12 -0800</bug_when>
    <thetext>Comment on attachment 333751
patch

Clearing flags on attachment: 333751

Committed r228454: &lt;https://trac.webkit.org/changeset/228454&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1398944</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-02-13 21:07:13 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>333751</attachid>
            <date>2018-02-13 17:09:34 -0800</date>
            <delta_ts>2018-02-13 21:07:12 -0800</delta_ts>
            <desc>patch</desc>
            <filename>c-backup.diff</filename>
            <type>text/plain</type>
            <size>6434</size>
            <attacher name="Saam Barati">saam</attacher>
            
              <data encoding="base64">SW5kZXg6IEpTVGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIEpTVGVzdHMvQ2hhbmdlTG9n
CShyZXZpc2lvbiAyMjg0NDMpCisrKyBKU1Rlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpA
QCAtMSwzICsxLDE3IEBACisyMDE4LTAyLTEzICBTYWFtIEJhcmF0aSAgPHNiYXJhdGlAYXBwbGUu
Y29tPgorCisgICAgICAgIHB1dERpcmVjdEluZGV4U2xvd09yQmV5b25kVmVjdG9yTGVuZ3RoIG5l
ZWRzIHRvIGNvbnZlcnQgdG8gZGljdGlvbmFyeSBpbmRleGluZyBtb2RlIGFsd2F5cyBpZiBhdHRy
aWJ1dGVzIGFyZSBwcmVzZW50CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xODI3NTUKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzM3MDgwODY0PgorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogc3RyZXNzL2Fs
d2F5cy1lbnRlci1kaWN0aW9uYXJ5LWluZGV4aW5nLW1vZGUtd2l0aC1nZXR0ZXIuanM6IEFkZGVk
LgorICAgICAgICAodGVzdDEuby5nZXQgMTAwMDUpOgorICAgICAgICAodGVzdDEpOgorICAgICAg
ICAodGVzdDIuby5nZXQgMTAwMCk6CisgICAgICAgICh0ZXN0Mik6CisKIDIwMTgtMDItMTMgIENh
aXRsaW4gUG90dGVyICA8Y2FpdHBAaWdhbGlhLmNvbT4KIAogICAgICAgICBbSlNDXSBjYWNoZSBU
YWdnZWRUZW1wbGF0ZSBhcnJheXMgYnkgY2FsbHNpdGUgcmF0aGVyIHRoYW4gYnkgY29udGVudHMK
SW5kZXg6IEpTVGVzdHMvc3RyZXNzL2Fsd2F5cy1lbnRlci1kaWN0aW9uYXJ5LWluZGV4aW5nLW1v
ZGUtd2l0aC1nZXR0ZXIuanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gSlNUZXN0cy9zdHJlc3MvYWx3YXlzLWVu
dGVyLWRpY3Rpb25hcnktaW5kZXhpbmctbW9kZS13aXRoLWdldHRlci5qcwkobm9uZXhpc3RlbnQp
CisrKyBKU1Rlc3RzL3N0cmVzcy9hbHdheXMtZW50ZXItZGljdGlvbmFyeS1pbmRleGluZy1tb2Rl
LXdpdGgtZ2V0dGVyLmpzCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsMjkgQEAKK2Z1bmN0aW9u
IHRlc3QxKGl0ZW0pIHsKKyAgICB2YXIgbyA9IHsKKyAgICAgICAgMTAwMDA6IGl0ZW0sCisgICAg
ICAgIGdldCAxMDAwNSgpIHsgfSwKKyAgICB9OworICAgIGxldCBhcnIgPSBuZXcgQXJyYXkoMTAw
MDgpOworICAgIGZvciAobGV0IGtleSBvZiBhcnIua2V5cygpKSB7CisgICAgICAgIGxldCBvMiA9
IHt9OworICAgICAgICBvW2tleV0gPSBvMjsKKyAgICB9Cit9Cit0ZXN0MSh7fSk7Cit0ZXN0MSgx
MCk7Cit0ZXN0MSgxMC41KTsKKworZnVuY3Rpb24gdGVzdDIoaXRlbSkgeworICAgIHZhciBvID0g
eworICAgICAgICAwOiBpdGVtLAorICAgICAgICBnZXQgMTAwMCgpIHsgfSwKKyAgICB9OworICAg
IGxldCBhcnIgPSBuZXcgQXJyYXkoMTAwMCk7CisgICAgZm9yIChsZXQga2V5IG9mIGFyci5rZXlz
KCkpIHsKKyAgICAgICAgbGV0IG8yID0ge307CisgICAgICAgIG9ba2V5XSA9IG8yOworICAgIH0K
K30KK3Rlc3QyKHt9KTsKK3Rlc3QyKDEwKTsKK3Rlc3QyKDEwLjUpOwpJbmRleDogU291cmNlL0ph
dmFTY3JpcHRDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCShyZXZpc2lvbiAyMjg0MzgpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUv
Q2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjAgQEAKKzIwMTgtMDItMTMgIFNh
YW0gQmFyYXRpICA8c2JhcmF0aUBhcHBsZS5jb20+CisKKyAgICAgICAgcHV0RGlyZWN0SW5kZXhT
bG93T3JCZXlvbmRWZWN0b3JMZW5ndGggbmVlZHMgdG8gY29udmVydCB0byBkaWN0aW9uYXJ5IGlu
ZGV4aW5nIG1vZGUgYWx3YXlzIGlmIGF0dHJpYnV0ZXMgYXJlIHByZXNlbnQKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4Mjc1NQorICAgICAgICA8cmRh
cjovL3Byb2JsZW0vMzcwODA4NjQ+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgcHV0RGlyZWN0SW5kZXhTbG93T3JCZXlvbmRWZWN0b3JMZW5ndGggd2l0
aCBub24temVybyBhdHRyaWJ1dGVzIG9ubHkgY29udmVydGVkCisgICAgICAgIHRoZSBvYmplY3Qg
aW4gcXVlc3Rpb24gdG8gYSBkaWN0aW9uYXJ5IGluZGV4aW5nIG1vZGUgd2hlbiB0aGUgaW5kZXgg
aXMgbGVzcyB0aGFuCisgICAgICAgIHRoZSB2ZWN0b3IgbGVuZ3RoLiBUaGlzIG1ha2VzIG5vIHNl
bnNlLiBJZiB3ZSdyZSBkZWZpbmluZyBhIGdldHRlciwgc2V0dGVyLCBvciByZWFkCisgICAgICAg
IG9ubHkgcHJvcGVydHksIHdlIG11c3QgYWx3YXlzIGVudGVyIHRoZSBkaWN0aW9uYXJ5IGluZGV4
aW5nIG1vZGUgaXJyZXNwZWN0aXZlCisgICAgICAgIG9mIHRoZSBpbmRleCBpbiByZWxhdGlvbiB0
byB0aGUgdmVjdG9yIGxlbmd0aC4KKworICAgICAgICAqIHJ1bnRpbWUvSlNPYmplY3QuY3BwOgor
ICAgICAgICAoSlNDOjpKU09iamVjdDo6cHV0RGlyZWN0SW5kZXhTbG93T3JCZXlvbmRWZWN0b3JM
ZW5ndGgpOgorCiAyMDE4LTAyLTEzICBTYWFtIEJhcmF0aSAgPHNiYXJhdGlAYXBwbGUuY29tPgog
CiAgICAgICAgIEZvbGx1cCBmaXggdG8gcjIyODQxMSBmb3IgMzItYml0IGJ1aWxkcy4gSSBtaXNz
ZWQgYSBwbGFjZSB3aGVyZSB3ZSB1c2VkIG5vbiB2YXJhcmcgZ2V0dGVyIGZvciBjaGlsZDIoKS4K
SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTT2JqZWN0LmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU09iamVjdC5jcHAJKHJldmlz
aW9uIDIyODQzMykKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTT2JqZWN0LmNw
cAkod29ya2luZyBjb3B5KQpAQCAtMjkyMiwxMSArMjkyMiw5IEBAIGJvb2wgSlNPYmplY3Q6OnB1
dERpcmVjdEluZGV4U2xvd09yQmV5b24KICAgICB9CiAgICAgICAgIAogICAgIGNhc2UgQUxMX0lO
VDMyX0lOREVYSU5HX1RZUEVTOiB7Ci0gICAgICAgIGlmIChhdHRyaWJ1dGVzKSB7Ci0gICAgICAg
ICAgICBpZiAoaSA8IG1fYnV0dGVyZmx5LT52ZWN0b3JMZW5ndGgoKSkKLSAgICAgICAgICAgICAg
ICByZXR1cm4gcHV0RGlyZWN0SW5kZXhCZXlvbmRWZWN0b3JMZW5ndGhXaXRoQXJyYXlTdG9yYWdl
KGV4ZWMsIGksIHZhbHVlLCBhdHRyaWJ1dGVzLCBtb2RlLCBlbnN1cmVBcnJheVN0b3JhZ2VFeGlz
dHNBbmRFbnRlckRpY3Rpb25hcnlJbmRleGluZ01vZGUodm0pKTsKLSAgICAgICAgICAgIHJldHVy
biBwdXREaXJlY3RJbmRleEJleW9uZFZlY3Rvckxlbmd0aFdpdGhBcnJheVN0b3JhZ2UoZXhlYywg
aSwgdmFsdWUsIGF0dHJpYnV0ZXMsIG1vZGUsIGNvbnZlcnRJbnQzMlRvQXJyYXlTdG9yYWdlKHZt
KSk7Ci0gICAgICAgIH0KKyAgICAgICAgQVNTRVJUKCFpbmRleGluZ1Nob3VsZEJlU3BhcnNlKCkp
OworICAgICAgICBpZiAoYXR0cmlidXRlcykKKyAgICAgICAgICAgIHJldHVybiBwdXREaXJlY3RJ
bmRleEJleW9uZFZlY3Rvckxlbmd0aFdpdGhBcnJheVN0b3JhZ2UoZXhlYywgaSwgdmFsdWUsIGF0
dHJpYnV0ZXMsIG1vZGUsIGVuc3VyZUFycmF5U3RvcmFnZUV4aXN0c0FuZEVudGVyRGljdGlvbmFy
eUluZGV4aW5nTW9kZSh2bSkpOwogICAgICAgICBpZiAoIXZhbHVlLmlzSW50MzIoKSkgewogICAg
ICAgICAgICAgY29udmVydEludDMyRm9yVmFsdWUodm0sIHZhbHVlKTsKICAgICAgICAgICAgIHJl
dHVybiBwdXREaXJlY3RJbmRleFNsb3dPckJleW9uZFZlY3Rvckxlbmd0aChleGVjLCBpLCB2YWx1
ZSwgYXR0cmlidXRlcywgbW9kZSk7CkBAIC0yOTM2LDExICsyOTM0LDkgQEAgYm9vbCBKU09iamVj
dDo6cHV0RGlyZWN0SW5kZXhTbG93T3JCZXlvbgogICAgIH0KICAgICAgICAgCiAgICAgY2FzZSBB
TExfRE9VQkxFX0lOREVYSU5HX1RZUEVTOiB7Ci0gICAgICAgIGlmIChhdHRyaWJ1dGVzKSB7Ci0g
ICAgICAgICAgICBpZiAoaSA8IG1fYnV0dGVyZmx5LT52ZWN0b3JMZW5ndGgoKSkKLSAgICAgICAg
ICAgICAgICByZXR1cm4gcHV0RGlyZWN0SW5kZXhCZXlvbmRWZWN0b3JMZW5ndGhXaXRoQXJyYXlT
dG9yYWdlKGV4ZWMsIGksIHZhbHVlLCBhdHRyaWJ1dGVzLCBtb2RlLCBlbnN1cmVBcnJheVN0b3Jh
Z2VFeGlzdHNBbmRFbnRlckRpY3Rpb25hcnlJbmRleGluZ01vZGUodm0pKTsKLSAgICAgICAgICAg
IHJldHVybiBwdXREaXJlY3RJbmRleEJleW9uZFZlY3Rvckxlbmd0aFdpdGhBcnJheVN0b3JhZ2Uo
ZXhlYywgaSwgdmFsdWUsIGF0dHJpYnV0ZXMsIG1vZGUsIGNvbnZlcnREb3VibGVUb0FycmF5U3Rv
cmFnZSh2bSkpOwotICAgICAgICB9CisgICAgICAgIEFTU0VSVCghaW5kZXhpbmdTaG91bGRCZVNw
YXJzZSgpKTsKKyAgICAgICAgaWYgKGF0dHJpYnV0ZXMpCisgICAgICAgICAgICByZXR1cm4gcHV0
RGlyZWN0SW5kZXhCZXlvbmRWZWN0b3JMZW5ndGhXaXRoQXJyYXlTdG9yYWdlKGV4ZWMsIGksIHZh
bHVlLCBhdHRyaWJ1dGVzLCBtb2RlLCBlbnN1cmVBcnJheVN0b3JhZ2VFeGlzdHNBbmRFbnRlckRp
Y3Rpb25hcnlJbmRleGluZ01vZGUodm0pKTsKICAgICAgICAgaWYgKCF2YWx1ZS5pc051bWJlcigp
KSB7CiAgICAgICAgICAgICBjb252ZXJ0RG91YmxlVG9Db250aWd1b3VzKHZtKTsKICAgICAgICAg
ICAgIHJldHVybiBwdXREaXJlY3RJbmRleFNsb3dPckJleW9uZFZlY3Rvckxlbmd0aChleGVjLCBp
LCB2YWx1ZSwgYXR0cmlidXRlcywgbW9kZSk7CkBAIC0yOTU1LDIwICsyOTUxLDE2IEBAIGJvb2wg
SlNPYmplY3Q6OnB1dERpcmVjdEluZGV4U2xvd09yQmV5b24KICAgICB9CiAgICAgICAgIAogICAg
IGNhc2UgQUxMX0NPTlRJR1VPVVNfSU5ERVhJTkdfVFlQRVM6IHsKLSAgICAgICAgaWYgKGF0dHJp
YnV0ZXMpIHsKLSAgICAgICAgICAgIGlmIChpIDwgbV9idXR0ZXJmbHktPnZlY3Rvckxlbmd0aCgp
KQotICAgICAgICAgICAgICAgIHJldHVybiBwdXREaXJlY3RJbmRleEJleW9uZFZlY3Rvckxlbmd0
aFdpdGhBcnJheVN0b3JhZ2UoZXhlYywgaSwgdmFsdWUsIGF0dHJpYnV0ZXMsIG1vZGUsIGVuc3Vy
ZUFycmF5U3RvcmFnZUV4aXN0c0FuZEVudGVyRGljdGlvbmFyeUluZGV4aW5nTW9kZSh2bSkpOwot
ICAgICAgICAgICAgcmV0dXJuIHB1dERpcmVjdEluZGV4QmV5b25kVmVjdG9yTGVuZ3RoV2l0aEFy
cmF5U3RvcmFnZShleGVjLCBpLCB2YWx1ZSwgYXR0cmlidXRlcywgbW9kZSwgY29udmVydENvbnRp
Z3VvdXNUb0FycmF5U3RvcmFnZSh2bSkpOwotICAgICAgICB9CisgICAgICAgIEFTU0VSVCghaW5k
ZXhpbmdTaG91bGRCZVNwYXJzZSgpKTsKKyAgICAgICAgaWYgKGF0dHJpYnV0ZXMpCisgICAgICAg
ICAgICByZXR1cm4gcHV0RGlyZWN0SW5kZXhCZXlvbmRWZWN0b3JMZW5ndGhXaXRoQXJyYXlTdG9y
YWdlKGV4ZWMsIGksIHZhbHVlLCBhdHRyaWJ1dGVzLCBtb2RlLCBlbnN1cmVBcnJheVN0b3JhZ2VF
eGlzdHNBbmRFbnRlckRpY3Rpb25hcnlJbmRleGluZ01vZGUodm0pKTsKICAgICAgICAgcHV0QnlJ
bmRleEJleW9uZFZlY3Rvckxlbmd0aFdpdGhvdXRBdHRyaWJ1dGVzPENvbnRpZ3VvdXNTaGFwZT4o
ZXhlYywgaSwgdmFsdWUpOwogICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9CiAKICAgICBjYXNl
IEFMTF9BUlJBWV9TVE9SQUdFX0lOREVYSU5HX1RZUEVTOgotICAgICAgICBpZiAoYXR0cmlidXRl
cykgewotICAgICAgICAgICAgaWYgKGkgPCBtX2J1dHRlcmZseS0+dmVjdG9yTGVuZ3RoKCkpCi0g
ICAgICAgICAgICAgICAgcmV0dXJuIHB1dERpcmVjdEluZGV4QmV5b25kVmVjdG9yTGVuZ3RoV2l0
aEFycmF5U3RvcmFnZShleGVjLCBpLCB2YWx1ZSwgYXR0cmlidXRlcywgbW9kZSwgZW5zdXJlQXJy
YXlTdG9yYWdlRXhpc3RzQW5kRW50ZXJEaWN0aW9uYXJ5SW5kZXhpbmdNb2RlKHZtKSk7Ci0gICAg
ICAgIH0KKyAgICAgICAgaWYgKGF0dHJpYnV0ZXMpCisgICAgICAgICAgICByZXR1cm4gcHV0RGly
ZWN0SW5kZXhCZXlvbmRWZWN0b3JMZW5ndGhXaXRoQXJyYXlTdG9yYWdlKGV4ZWMsIGksIHZhbHVl
LCBhdHRyaWJ1dGVzLCBtb2RlLCBlbnN1cmVBcnJheVN0b3JhZ2VFeGlzdHNBbmRFbnRlckRpY3Rp
b25hcnlJbmRleGluZ01vZGUodm0pKTsKICAgICAgICAgcmV0dXJuIHB1dERpcmVjdEluZGV4QmV5
b25kVmVjdG9yTGVuZ3RoV2l0aEFycmF5U3RvcmFnZShleGVjLCBpLCB2YWx1ZSwgYXR0cmlidXRl
cywgbW9kZSwgYXJyYXlTdG9yYWdlKCkpOwogICAgICAgICAKICAgICBkZWZhdWx0Ogo=
</data>

          </attachment>
      

    </bug>

</bugzilla>