<?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>150850</bug_id>
          
          <creation_ts>2015-11-03 13:10:00 -0800</creation_ts>
          <short_desc>Fix some inefficiencies in the baseline usage of JITAddGenerator.</short_desc>
          <delta_ts>2015-11-03 14:15:23 -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 Local 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>msaboff</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1139037</commentid>
    <comment_count>0</comment_count>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2015-11-03 13:10:00 -0800</bug_when>
    <thetext>1. emit_op_add() was loading the operands twice.  Removed the redundant load.
2. The snippet may decide that it wants to go the slow path route all the time.  In that case, emit_op_add will end up emitting a branch to an out of line slow path followed by some dead code to store the result of the fast path on to the stack.  We now check if the snippet determined that there&apos;s no fast path, and just emit the slow path inline, and skip the dead store of the fast path result.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1139039</commentid>
    <comment_count>1</comment_count>
      <attachid>264716</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2015-11-03 13:13:01 -0800</bug_when>
    <thetext>Created attachment 264716
the patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1139070</commentid>
    <comment_count>2</comment_count>
      <attachid>264716</attachid>
    <who name="Michael Saboff">msaboff</who>
    <bug_when>2015-11-03 14:08:50 -0800</bug_when>
    <thetext>Comment on attachment 264716
the patch.

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1139073</commentid>
    <comment_count>3</comment_count>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2015-11-03 14:15:23 -0800</bug_when>
    <thetext>Thanks.  Landed in r191978: &lt;http://trac.webkit.org/r191978&gt;.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>264716</attachid>
            <date>2015-11-03 13:13:01 -0800</date>
            <delta_ts>2015-11-03 14:08:50 -0800</delta_ts>
            <desc>the patch.</desc>
            <filename>bug-150850.patch</filename>
            <type>text/plain</type>
            <size>2559</size>
            <attacher name="Mark Lam">mark.lam</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMTkxOTcwKQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIxIEBA
CisyMDE1LTExLTAzICBNYXJrIExhbSAgPG1hcmsubGFtQGFwcGxlLmNvbT4KKworICAgICAgICBG
aXggc29tZSBpbmVmZmljaWVuY2llcyBpbiB0aGUgYmFzZWxpbmUgdXNhZ2Ugb2YgSklUQWRkR2Vu
ZXJhdG9yLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTUwODUwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
MS4gZW1pdF9vcF9hZGQoKSB3YXMgbG9hZGluZyB0aGUgb3BlcmFuZHMgdHdpY2UuICBSZW1vdmVk
IHRoZSByZWR1bmRhbnQgbG9hZC4KKyAgICAgICAgMi4gVGhlIHNuaXBwZXQgbWF5IGRlY2lkZSB0
aGF0IGl0IHdhbnRzIHRvIGdvIHRoZSBzbG93IHBhdGggcm91dGUgYWxsIHRoZSB0aW1lLgorICAg
ICAgICAgICBJbiB0aGF0IGNhc2UsIGVtaXRfb3BfYWRkIHdpbGwgZW5kIHVwIGVtaXR0aW5nIGEg
YnJhbmNoIHRvIGFuIG91dCBvZiBsaW5lCisgICAgICAgICAgIHNsb3cgcGF0aCBmb2xsb3dlZCBi
eSBzb21lIGRlYWQgY29kZSB0byBzdG9yZSB0aGUgcmVzdWx0IG9mIHRoZSBmYXN0IHBhdGgKKyAg
ICAgICAgICAgb24gdG8gdGhlIHN0YWNrLgorICAgICAgICAgICBXZSBub3cgY2hlY2sgaWYgdGhl
IHNuaXBwZXQgZGV0ZXJtaW5lZCB0aGF0IHRoZXJlJ3Mgbm8gZmFzdCBwYXRoLCBhbmQganVzdAor
ICAgICAgICAgICBlbWl0IHRoZSBzbG93IHBhdGggaW5saW5lLCBhbmQgc2tpcCB0aGUgZGVhZCBz
dG9yZSBvZiB0aGUgZmFzdCBwYXRoIHJlc3VsdC4KKworICAgICAgICAqIGppdC9KSVRBcml0aG1l
dGljLmNwcDoKKyAgICAgICAgKEpTQzo6SklUOjplbWl0X29wX2FkZCk6CisKIDIwMTUtMTEtMDMg
IEpvc2VwaCBQZWNvcmFybyAgPHBlY29yYXJvQGFwcGxlLmNvbT4KIAogICAgICAgICBXZWIgSW5z
cGVjdG9yOiBIYW5kbGUgb3IgUmVtb3ZlIFBhcnNlSFRNTCBUaW1lbGluZSBFdmVudCBSZWNvcmRz
CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJVEFyaXRobWV0aWMuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklUQXJpdGhtZXRpYy5jcHAJKHJl
dmlzaW9uIDE5MTkwNSkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklUQXJpdGhtZXRp
Yy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTkzMiw5ICs5MzIsNiBAQCB2b2lkIEpJVDo6ZW1pdF9v
cF9hZGQoSW5zdHJ1Y3Rpb24qIGN1cnJlCiAgICAgRlBSUmVnIHNjcmF0Y2hGUFIgPSBmcFJlZ1Qy
OwogI2VuZGlmCiAKLSAgICBlbWl0R2V0VmlydHVhbFJlZ2lzdGVyKG9wMSwgbGVmdFJlZ3MpOwot
ICAgIGVtaXRHZXRWaXJ0dWFsUmVnaXN0ZXIob3AyLCByaWdodFJlZ3MpOwotCiAgICAgYm9vbCBs
ZWZ0SXNDb25zdEludDMyID0gaXNPcGVyYW5kQ29uc3RhbnRJbnQob3AxKTsKICAgICBib29sIHJp
Z2h0SXNDb25zdEludDMyID0gaXNPcGVyYW5kQ29uc3RhbnRJbnQob3AyKTsKICAgICBKSVRBZGRH
ZW5lcmF0b3I6Ok9wZXJhbmRzQ29uc3RuZXNzIG9wZXJhbmRzQ29uc3RuZXNzOwpAQCAtOTY4LDEw
ICs5NjUsMTcgQEAgdm9pZCBKSVQ6OmVtaXRfb3BfYWRkKEluc3RydWN0aW9uKiBjdXJyZQogICAg
ICAgICBmcFJlZ1QwLCBmcFJlZ1QxLCBzY3JhdGNoR1BSLCBzY3JhdGNoRlBSKTsKIAogICAgIGdl
bi5nZW5lcmF0ZUZhc3RQYXRoKCp0aGlzKTsKLSAgICBnZW4uZW5kSnVtcExpc3QoKS5saW5rKHRo
aXMpOwotICAgIGVtaXRQdXRWaXJ0dWFsUmVnaXN0ZXIocmVzdWx0LCByZXN1bHRSZWdzKTsKIAot
ICAgIGFkZFNsb3dDYXNlKGdlbi5zbG93UGF0aEp1bXBMaXN0KCkpOworICAgIGlmICghZ2VuLmVu
ZEp1bXBMaXN0KCkuZW1wdHkoKSkgeworICAgICAgICBnZW4uZW5kSnVtcExpc3QoKS5saW5rKHRo
aXMpOworICAgICAgICBlbWl0UHV0VmlydHVhbFJlZ2lzdGVyKHJlc3VsdCwgcmVzdWx0UmVncyk7
CisgICAgICAgIAorICAgICAgICBhZGRTbG93Q2FzZShnZW4uc2xvd1BhdGhKdW1wTGlzdCgpKTsK
KyAgICB9IGVsc2UgeworICAgICAgICBnZW4uc2xvd1BhdGhKdW1wTGlzdCgpLmxpbmsodGhpcyk7
CisgICAgICAgIEpJVFNsb3dQYXRoQ2FsbCBzbG93UGF0aENhbGwodGhpcywgY3VycmVudEluc3Ry
dWN0aW9uLCBzbG93X3BhdGhfYWRkKTsKKyAgICAgICAgc2xvd1BhdGhDYWxsLmNhbGwoKTsKKyAg
ICB9CiB9CiAKIHZvaWQgSklUOjplbWl0U2xvd19vcF9hZGQoSW5zdHJ1Y3Rpb24qIGN1cnJlbnRJ
bnN0cnVjdGlvbiwgVmVjdG9yPFNsb3dDYXNlRW50cnk+OjppdGVyYXRvciYgaXRlcikK
</data>
<flag name="review"
          id="289814"
          type_id="1"
          status="+"
          setter="msaboff"
    />
          </attachment>
      

    </bug>

</bugzilla>