<?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>70460</bug_id>
          
          <creation_ts>2011-10-19 17:21:01 -0700</creation_ts>
          <short_desc>DFG JIT 32_64 - remove unnecessary double unboxings in fillDouble/fillSpeculateDouble</short_desc>
          <delta_ts>2011-10-19 20:31:31 -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>0</everconfirmed>
          <reporter name="Yuqiang Xian">yuqiang.xian</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>barraclough</cc>
    
    <cc>fpizlo</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>487163</commentid>
    <comment_count>0</comment_count>
    <who name="Yuqiang Xian">yuqiang.xian</who>
    <bug_when>2011-10-19 17:21:01 -0700</bug_when>
    <thetext>As pointed out by Gavin in bug #70418, when a value is already in memory we can avoid loading it to two GPRs at first and then unboxing them to a FPR.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>487174</commentid>
    <comment_count>1</comment_count>
      <attachid>111703</attachid>
    <who name="Yuqiang Xian">yuqiang.xian</who>
    <bug_when>2011-10-19 17:38:40 -0700</bug_when>
    <thetext>Created attachment 111703
the patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>487176</commentid>
    <comment_count>2</comment_count>
    <who name="Yuqiang Xian">yuqiang.xian</who>
    <bug_when>2011-10-19 17:40:46 -0700</bug_when>
    <thetext>Performance result based on current code base w/ DFG 32bit turned on (on Linux ia32 Core i7 Nehalem) -

Kraken:

TEST                         COMPARISON            FROM                 TO             DETAILS

=============================================================================

** TOTAL **:                 1.087x as fast    7272.1ms +/- 0.3%   6688.4ms +/- 0.1%     significant

=============================================================================

  ai:                        1.002x as fast     797.2ms +/- 0.2%    795.3ms +/- 0.1%     significant
    astar:                   1.002x as fast     797.2ms +/- 0.2%    795.3ms +/- 0.1%     significant

  audio:                     1.116x as fast    2376.4ms +/- 0.8%   2130.0ms +/- 0.2%     significant
    beat-detection:          1.108x as fast     702.2ms +/- 2.7%    634.0ms +/- 0.5%     significant
    dft:                     1.27x as fast      557.7ms +/- 0.2%    439.4ms +/- 0.5%     significant
    fft:                     1.123x as fast     534.6ms +/- 0.4%    476.1ms +/- 0.1%     significant
    oscillator:              -                  581.9ms +/- 0.3%    580.5ms +/- 0.1%

  imaging:                   1.129x as fast    2920.6ms +/- 0.2%   2586.2ms +/- 0.1%     significant
    gaussian-blur:           1.35x as fast     1278.9ms +/- 0.1%    950.8ms +/- 0.1%     significant
    darkroom:                1.003x as fast     715.8ms +/- 0.2%    713.5ms +/- 0.1%     significant
    desaturate:              -                  925.9ms +/- 0.5%    921.9ms +/- 0.3%

  json:                      -                  194.6ms +/- 0.5%    193.9ms +/- 0.5%
    parse-financial:         1.006x as fast      82.1ms +/- 0.3%     81.6ms +/- 0.5%     significant
    stringify-tinderbox:     -                  112.5ms +/- 1.0%    112.3ms +/- 0.8%

  stanford:                  -                  983.3ms +/- 0.2%    983.0ms +/- 0.3%
    crypto-aes:              ??                 164.7ms +/- 0.5%    165.6ms +/- 0.6%     not conclusive: might be *1.005x as slow*
    crypto-ccm:              -                  141.3ms +/- 0.7%    140.5ms +/- 0.6%
    crypto-pbkdf2:           -                  572.7ms +/- 0.2%    572.4ms +/- 0.3%
    crypto-sha256-iterative: -                  104.6ms +/- 0.4%    104.5ms +/- 0.5%</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>487267</commentid>
    <comment_count>3</comment_count>
      <attachid>111703</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-10-19 20:31:27 -0700</bug_when>
    <thetext>Comment on attachment 111703
the patch

Clearing flags on attachment: 111703

Committed r97928: &lt;http://trac.webkit.org/changeset/97928&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>487268</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-10-19 20:31:31 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>111703</attachid>
            <date>2011-10-19 17:38:40 -0700</date>
            <delta_ts>2011-10-19 20:31:27 -0700</delta_ts>
            <desc>the patch</desc>
            <filename>70460.patch</filename>
            <type>text/plain</type>
            <size>4332</size>
            <attacher name="Yuqiang Xian">yuqiang.xian</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gOTc4OTkpCisrKyBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjEgQEAK
KzIwMTEtMTAtMTkgIFl1cWlhbmcgWGlhbiAgPHl1cWlhbmcueGlhbkBpbnRlbC5jb20+CisKKyAg
ICAgICAgREZHIEpJVCAzMl82NCAtIHJlbW92ZSB1bm5lY2Vzc2FyeSBkb3VibGUgdW5ib3hpbmdz
IGluIGZpbGxEb3VibGUvZmlsbFNwZWN1bGF0ZURvdWJsZQorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzA0NjAKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBcyBwb2ludGVkIG91dCBieSBHYXZpbiBpbiBidWcg
IzcwNDE4LCB3aGVuIGEgdmFsdWUgaXMgYWxyZWFkeSBpbiBtZW1vcnkKKyAgICAgICAgd2UgY2Fu
IGF2b2lkIGxvYWRpbmcgaXQgdG8gdHdvIEdQUnMgYXQgZmlyc3QgYW5kIHRoZW4gdW5ib3hpbmcg
dGhlbSB0byBhIEZQUi4KKyAgICAgICAgVGhpcyBnaXZlcyA5JSBpbXByb3ZlbWVudCBvbiBLcmFr
ZW4gaWYgd2l0aG91dCB0aGUgY2hhbmdlIGluIGJ1ZyAjNzA0MTgsCisgICAgICAgIGFuZCAxJSBp
ZiBiYXNlZCBvbiB0aGUgY29kZSB3aXRoIGJ1ZyAjNzA0MTggY2hhbmdlLgorICAgICAgICBQZXJm
b3JtYW5jZSBpcyBuZXV0cmFsIGluIFY4IGFuZCBTdW5TcGlkZXIuCisKKyAgICAgICAgKiBkZmcv
REZHSklUQ29kZUdlbmVyYXRvcjMyXzY0LmNwcDoKKyAgICAgICAgKEpTQzo6REZHOjpKSVRDb2Rl
R2VuZXJhdG9yOjpmaWxsRG91YmxlKToKKyAgICAgICAgKiBkZmcvREZHU3BlY3VsYXRpdmVKSVQz
Ml82NC5jcHA6CisgICAgICAgIChKU0M6OkRGRzo6U3BlY3VsYXRpdmVKSVQ6OmZpbGxTcGVjdWxh
dGVEb3VibGUpOgorCiAyMDExLTEwLTE5ICBHZW9mZnJleSBHYXJlbiAgPGdnYXJlbkBhcHBsZS5j
b20+CiAKICAgICAgICAgUmVtb3ZlZCBTdHJpbmdJbXBsQmFzZSwgZnVzaW5nIGl0IGludG8gU3Ry
aW5nSW1wbApJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdKSVRDb2RlR2VuZXJh
dG9yMzJfNjQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZH
SklUQ29kZUdlbmVyYXRvcjMyXzY0LmNwcAkocmV2aXNpb24gOTc4OTApCisrKyBTb3VyY2UvSmF2
YVNjcmlwdENvcmUvZGZnL0RGR0pJVENvZGVHZW5lcmF0b3IzMl82NC5jcHAJKHdvcmtpbmcgY29w
eSkKQEAgLTEzMiwxNCArMTMyLDE5IEBAIEZQUlJlZyBKSVRDb2RlR2VuZXJhdG9yOjpmaWxsRG91
YmxlKE5vZGUKICAgICAgICAgICAgICAgICBpbmZvLmZpbGxEb3VibGUoZnByKTsKICAgICAgICAg
ICAgICAgICByZXR1cm4gZnByOwogICAgICAgICAgICAgfQotICAgICAgICAgICAgR1BSUmVnIHRh
ZyA9IGFsbG9jYXRlKCk7Ci0gICAgICAgICAgICBHUFJSZWcgcGF5bG9hZCA9IGFsbG9jYXRlKCk7
Ci0gICAgICAgICAgICBtX2ppdC5lbWl0TG9hZChub2RlSW5kZXgsIHRhZywgcGF5bG9hZCk7Ci0g
ICAgICAgICAgICBtX2dwcnMucmV0YWluKHRhZywgdmlydHVhbFJlZ2lzdGVyLCBTcGlsbE9yZGVy
U3BpbGxlZCk7Ci0gICAgICAgICAgICBtX2dwcnMucmV0YWluKHBheWxvYWQsIHZpcnR1YWxSZWdp
c3RlciwgU3BpbGxPcmRlclNwaWxsZWQpOwotICAgICAgICAgICAgaW5mby5maWxsSlNWYWx1ZSh0
YWcsIHBheWxvYWQsIHNwaWxsRm9ybWF0KTsKLSAgICAgICAgICAgIHVubG9jayh0YWcpOwotICAg
ICAgICAgICAgdW5sb2NrKHBheWxvYWQpOworCisgICAgICAgICAgICBGUFJSZWcgZnByID0gZnBy
QWxsb2NhdGUoKTsKKyAgICAgICAgICAgIEpJVENvbXBpbGVyOjpKdW1wIGlzSW50ZWdlciA9IG1f
aml0LmJyYW5jaDMyKE1hY3JvQXNzZW1ibGVyOjpFcXVhbCwgSklUQ29tcGlsZXI6OnRhZ0Zvcih2
aXJ0dWFsUmVnaXN0ZXIpLCBUcnVzdGVkSW1tMzIoSlNWYWx1ZTo6SW50MzJUYWcpKTsKKyAgICAg
ICAgICAgIG1faml0LmxvYWREb3VibGUoSklUQ29tcGlsZXI6OmFkZHJlc3NGb3IodmlydHVhbFJl
Z2lzdGVyKSwgZnByKTsKKyAgICAgICAgICAgIEpJVENvbXBpbGVyOjpKdW1wIGhhc1VuYm94ZWRE
b3VibGUgPSBtX2ppdC5qdW1wKCk7CisKKyAgICAgICAgICAgIGlzSW50ZWdlci5saW5rKCZtX2pp
dCk7CisgICAgICAgICAgICBtX2ppdC5jb252ZXJ0SW50MzJUb0RvdWJsZShKSVRDb21waWxlcjo6
cGF5bG9hZEZvcih2aXJ0dWFsUmVnaXN0ZXIpLCBmcHIpOworCisgICAgICAgICAgICBoYXNVbmJv
eGVkRG91YmxlLmxpbmsoJm1faml0KTsKKyAgICAgICAgICAgIG1fZnBycy5yZXRhaW4oZnByLCB2
aXJ0dWFsUmVnaXN0ZXIsIFNwaWxsT3JkZXJTcGlsbGVkKTsKKyAgICAgICAgICAgIGluZm8uZmls
bERvdWJsZShmcHIpOworICAgICAgICAgICAgcmV0dXJuIGZwcjsKICAgICAgICAgfQogICAgIH0K
IApJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdTcGVjdWxhdGl2ZUpJVDMyXzY0
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR1NwZWN1bGF0
aXZlSklUMzJfNjQuY3BwCShyZXZpc2lvbiA5Nzg5MCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9kZmcvREZHU3BlY3VsYXRpdmVKSVQzMl82NC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE4MSwx
NSArMTgxLDIxIEBAIEZQUlJlZyBTcGVjdWxhdGl2ZUpJVDo6ZmlsbFNwZWN1bGF0ZURvdWIKICAg
ICAgICAgICAgICAgICBtX2ZwcnMucmV0YWluKGZwciwgdmlydHVhbFJlZ2lzdGVyLCBTcGlsbE9y
ZGVyU3BpbGxlZCk7CiAgICAgICAgICAgICAgICAgaW5mby5maWxsRG91YmxlKGZwcik7CiAgICAg
ICAgICAgICAgICAgcmV0dXJuIGZwcjsKLSAgICAgICAgICAgIH0gCi0gICAgICAgICAgICBHUFJS
ZWcgdGFnID0gYWxsb2NhdGUoKTsKLSAgICAgICAgICAgIEdQUlJlZyBwYXlsb2FkID0gYWxsb2Nh
dGUoKTsKLSAgICAgICAgICAgIG1faml0LmVtaXRMb2FkKG5vZGVJbmRleCwgdGFnLCBwYXlsb2Fk
KTsKLSAgICAgICAgICAgIG1fZ3Bycy5yZXRhaW4odGFnLCB2aXJ0dWFsUmVnaXN0ZXIsIFNwaWxs
T3JkZXJTcGlsbGVkKTsKLSAgICAgICAgICAgIG1fZ3Bycy5yZXRhaW4ocGF5bG9hZCwgdmlydHVh
bFJlZ2lzdGVyLCBTcGlsbE9yZGVyU3BpbGxlZCk7Ci0gICAgICAgICAgICBpbmZvLmZpbGxKU1Zh
bHVlKHRhZywgcGF5bG9hZCwgc3BpbGxGb3JtYXQpOwotICAgICAgICAgICAgdW5sb2NrKHRhZyk7
Ci0gICAgICAgICAgICB1bmxvY2socGF5bG9hZCk7CisgICAgICAgICAgICB9CisKKyAgICAgICAg
ICAgIEZQUlJlZyBmcHIgPSBmcHJBbGxvY2F0ZSgpOworICAgICAgICAgICAgSklUQ29tcGlsZXI6
Okp1bXAgaXNJbnRlZ2VyID0gbV9qaXQuYnJhbmNoMzIoTWFjcm9Bc3NlbWJsZXI6OkVxdWFsLCBK
SVRDb21waWxlcjo6dGFnRm9yKHZpcnR1YWxSZWdpc3RlciksIFRydXN0ZWRJbW0zMihKU1ZhbHVl
OjpJbnQzMlRhZykpOworICAgICAgICAgICAgc3BlY3VsYXRpb25DaGVjayhtX2ppdC5icmFuY2gz
MihNYWNyb0Fzc2VtYmxlcjo6QWJvdmVPckVxdWFsLCBKSVRDb21waWxlcjo6dGFnRm9yKHZpcnR1
YWxSZWdpc3RlciksIFRydXN0ZWRJbW0zMihKU1ZhbHVlOjpMb3dlc3RUYWcpKSk7CisgICAgICAg
ICAgICBtX2ppdC5sb2FkRG91YmxlKEpJVENvbXBpbGVyOjphZGRyZXNzRm9yKHZpcnR1YWxSZWdp
c3RlciksIGZwcik7CisgICAgICAgICAgICBKSVRDb21waWxlcjo6SnVtcCBoYXNVbmJveGVkRG91
YmxlID0gbV9qaXQuanVtcCgpOworCisgICAgICAgICAgICBpc0ludGVnZXIubGluaygmbV9qaXQp
OworICAgICAgICAgICAgbV9qaXQuY29udmVydEludDMyVG9Eb3VibGUoSklUQ29tcGlsZXI6OnBh
eWxvYWRGb3IodmlydHVhbFJlZ2lzdGVyKSwgZnByKTsKKworICAgICAgICAgICAgaGFzVW5ib3hl
ZERvdWJsZS5saW5rKCZtX2ppdCk7CisgICAgICAgICAgICBtX2ZwcnMucmV0YWluKGZwciwgdmly
dHVhbFJlZ2lzdGVyLCBTcGlsbE9yZGVyU3BpbGxlZCk7CisgICAgICAgICAgICBpbmZvLmZpbGxE
b3VibGUoZnByKTsKKyAgICAgICAgICAgIHJldHVybiBmcHI7CiAgICAgICAgIH0KICAgICB9CiAK
</data>

          </attachment>
      

    </bug>

</bugzilla>