<?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>118997</bug_id>
          
          <creation_ts>2013-07-22 17:36:45 -0700</creation_ts>
          <short_desc>Need ExpressionRangeInfo before ResolveForPuts in strict mode</short_desc>
          <delta_ts>2013-07-23 18:10:37 -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>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="Mark Lam">mark.lam</reporter>
          <assigned_to name="Mark Lam">mark.lam</assigned_to>
          <cc>fpizlo</cc>
    
    <cc>ggaren</cc>
    
    <cc>oliver</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>910883</commentid>
    <comment_count>0</comment_count>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2013-07-22 17:36:45 -0700</bug_when>
    <thetext>If we add an assertion in UnlinkedCodeBlock::expressionRangeForBytecodeOffset() to ensure that we are able to find an ExpressionRangeInfo for any given bytecode, the following tests will fail:
    fast/js/basic-strict-mode.html
    fast/js/mozilla/strict/8.7.2.html

We should emit expression info before calls to emitResolveBaseForPut() if we&apos;re in strict mode.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>910889</commentid>
    <comment_count>1</comment_count>
      <attachid>207299</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2013-07-22 17:53:54 -0700</bug_when>
    <thetext>Created attachment 207299
the patch

This patch was already previously r+ by Oliver as part of a patch in https://bugs.webkit.org/show_bug.cgi?id=116853.  Uploading it here as a stand alone patch so that it can be landed separately from the BinaryOpNode change in the original bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>911195</commentid>
    <comment_count>2</comment_count>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2013-07-23 18:09:36 -0700</bug_when>
    <thetext>Landed in r153074: &lt;http://trac.webkit.org/changeset/153074&gt;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>911196</commentid>
    <comment_count>3</comment_count>
      <attachid>207299</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2013-07-23 18:10:37 -0700</bug_when>
    <thetext>Comment on attachment 207299
the patch

This patch was already previously reviewed by Oliver.  So, I&apos;ve landed it, and canceling the review.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>207299</attachid>
            <date>2013-07-22 17:53:54 -0700</date>
            <delta_ts>2013-07-23 18:10:37 -0700</delta_ts>
            <desc>the patch</desc>
            <filename>bug-118997.patch</filename>
            <type>text/plain</type>
            <size>2535</size>
            <attacher name="Mark Lam">mark.lam</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMTUyOTk4KQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIyIEBA
CisyMDEzLTA3LTEwICBNYXJrIExhbSAgPG1hcmsubGFtQGFwcGxlLmNvbT4KKworICAgICAgICBO
ZWVkIEV4cHJlc3Npb25SYW5nZUluZm8gYmVmb3JlIFJlc29sdmVGb3JQdXRzIGluIHN0cmljdCBt
b2RlLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTE4
OTk3LgorCisgICAgICAgIFJldmlld2VkIGJ5IE9saXZlciBIdW50LgorCisgICAgICAgIElmIHdl
IGFkZCBhbiBhc3NlcnRpb24gaW4gVW5saW5rZWRDb2RlQmxvY2s6OmV4cHJlc3Npb25SYW5nZUZv
ckJ5dGVjb2RlT2Zmc2V0KCkKKyAgICAgICAgdG8gZW5zdXJlIHRoYXQgd2UgYXJlIGFibGUgdG8g
ZmluZCBhbiBFeHByZXNzaW9uUmFuZ2VJbmZvIGZvciBhbnkgZ2l2ZW4gYnl0ZWNvZGUKKyAgICAg
ICAgb2Zmc2V0LCB0aGUgZm9sbG93aW5nIHRlc3RzIHdpbGwgZmFpbHM6CisgICAgICAgICAgICBm
YXN0L2pzL2Jhc2ljLXN0cmljdC1tb2RlLmh0bWwKKyAgICAgICAgICAgIGZhc3QvanMvbW96aWxs
YS9zdHJpY3QvOC43LjIuaHRtbAorICAgICAgICBXaXRoIHRoaXMgZml4LCB0aG9zZSB0ZXN0cyB3
aWxsIG5vIGxvbmdlciBmYWlsLgorCisgICAgICAgICogYnl0ZWNvbXBpbGVyL05vZGVzQ29kZWdl
bi5jcHA6CisgICAgICAgIChKU0M6OkFzc2lnblJlc29sdmVOb2RlOjplbWl0Qnl0ZWNvZGUpOgor
ICAgICAgICAoSlNDOjpGb3JJbk5vZGU6OmVtaXRCeXRlY29kZSk6CisgICAgICAgIC0gRW1pdCBl
eHByZXNzaW9uIGluZm8gYmVmb3JlIGNhbGxzIHRvIGVtaXRSZXNvbHZlQmFzZUZvclB1dCgpIHdo
ZW4gaW4gc3RyaWN0IG1vZGUuCisKIDIwMTMtMDctMjIgIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hy
aXN0ZW5zZW5AYXBwbGUuY29tPgogCiAgICAgICAgIEFkZGVkIGFzc2VtYmx5IGZpbGVzIHRvIFdp
bmRvd3MgNjQtYml0IGJ1aWxkcy4KSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29t
cGlsZXIvTm9kZXNDb2RlZ2VuLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENv
cmUvYnl0ZWNvbXBpbGVyL05vZGVzQ29kZWdlbi5jcHAJKHJldmlzaW9uIDE1Mjk5OCkKKysrIFNv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29tcGlsZXIvTm9kZXNDb2RlZ2VuLmNwcAkod29ya2lu
ZyBjb3B5KQpAQCAtMTM1OSw2ICsxMzU5LDggQEAgUmVnaXN0ZXJJRCogQXNzaWduUmVzb2x2ZU5v
ZGU6OmVtaXRCeXRlYwogICAgIH0KIAogICAgIE5vbmxvY2FsUmVzb2x2ZUluZm8gcmVzb2x2ZVZl
cmlmaWVyOworICAgIGlmIChnZW5lcmF0b3IuaXNTdHJpY3RNb2RlKCkpCisgICAgICAgIGdlbmVy
YXRvci5lbWl0RXhwcmVzc2lvbkluZm8oZGl2b3QoKSwgZGl2b3RTdGFydE9mZnNldCgpLCBkaXZv
dEVuZE9mZnNldCgpLCBkaXZvdExpbmUoKSwgZGl2b3RMaW5lU3RhcnQoKSk7CiAgICAgUmVmUHRy
PFJlZ2lzdGVySUQ+IGJhc2UgPSBnZW5lcmF0b3IuZW1pdFJlc29sdmVCYXNlRm9yUHV0KGdlbmVy
YXRvci5uZXdUZW1wb3JhcnkoKSwgcmVzb2x2ZVJlc3VsdCwgbV9pZGVudCwgcmVzb2x2ZVZlcmlm
aWVyKTsKICAgICBpZiAoZHN0ID09IGdlbmVyYXRvci5pZ25vcmVkUmVzdWx0KCkpCiAgICAgICAg
IGRzdCA9IDA7CkBAIC0xNzM3LDYgKzE3MzksOCBAQCB2b2lkIEZvckluTm9kZTo6ZW1pdEJ5dGVj
b2RlKEJ5dGVjb2RlR2VuCiAgICAgICAgICAgICBwcm9wZXJ0eU5hbWUgPSBnZW5lcmF0b3IubmV3
VGVtcG9yYXJ5KCk7CiAgICAgICAgICAgICBSZWZQdHI8UmVnaXN0ZXJJRD4gcHJvdGVjdCA9IHBy
b3BlcnR5TmFtZTsKICAgICAgICAgICAgIE5vbmxvY2FsUmVzb2x2ZUluZm8gcmVzb2x2ZVZlcmlm
aWVyOworICAgICAgICAgICAgaWYgKGdlbmVyYXRvci5pc1N0cmljdE1vZGUoKSkKKyAgICAgICAg
ICAgICAgICBnZW5lcmF0b3IuZW1pdEV4cHJlc3Npb25JbmZvKGRpdm90KCksIGRpdm90U3RhcnRP
ZmZzZXQoKSwgZGl2b3RFbmRPZmZzZXQoKSwgZGl2b3RMaW5lKCksIGRpdm90TGluZVN0YXJ0KCkp
OwogICAgICAgICAgICAgUmVnaXN0ZXJJRCogYmFzZSA9IGdlbmVyYXRvci5lbWl0UmVzb2x2ZUJh
c2VGb3JQdXQoZ2VuZXJhdG9yLm5ld1RlbXBvcmFyeSgpLCByZXNvbHZlUmVzdWx0LCBpZGVudCwg
cmVzb2x2ZVZlcmlmaWVyKTsKIAogICAgICAgICAgICAgZ2VuZXJhdG9yLmVtaXRFeHByZXNzaW9u
SW5mbyhkaXZvdCgpLCBkaXZvdFN0YXJ0T2Zmc2V0KCksIGRpdm90RW5kT2Zmc2V0KCksIGRpdm90
TGluZSgpLCBkaXZvdExpbmVTdGFydCgpKTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>