<?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>64330</bug_id>
          
          <creation_ts>2011-07-11 17:09:12 -0700</creation_ts>
          <short_desc>DFG speculative JIT does not guard itself against floating point speculation failures on non-floating-point constants</short_desc>
          <delta_ts>2011-07-11 18:10:23 -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>0</everconfirmed>
          <reporter name="Filip Pizlo">fpizlo</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>435321</commentid>
    <comment_count>0</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2011-07-11 17:09:12 -0700</bug_when>
    <thetext>The DFG speculative JIT may speculate that a value is a double, even though there may be operations that set it to a non-double constant.  Such static speculation failures are benign if the JIT notices them and performs the appropriate evasive action.  Unfortunately, the DFG JIT does not do this in this particular case (SetLocal to a speculate-double from a non-double JSConstant), which causes crashes when the fillFPR code wants to refill the register.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>435324</commentid>
    <comment_count>1</comment_count>
      <attachid>100386</attachid>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2011-07-11 17:15:22 -0700</bug_when>
    <thetext>Created attachment 100386
the patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>435362</commentid>
    <comment_count>2</comment_count>
      <attachid>100386</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-07-11 18:10:20 -0700</bug_when>
    <thetext>Comment on attachment 100386
the patch

Clearing flags on attachment: 100386

Committed r90799: &lt;http://trac.webkit.org/changeset/90799&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>435363</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-07-11 18:10:23 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>100386</attachid>
            <date>2011-07-11 17:15:22 -0700</date>
            <delta_ts>2011-07-11 18:10:19 -0700</delta_ts>
            <desc>the patch</desc>
            <filename>fixspecdouble_patch_1.diff</filename>
            <type>text/plain</type>
            <size>1886</size>
            <attacher name="Filip Pizlo">fpizlo</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gOTA3OTUpCisrKyBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTggQEAK
KzIwMTEtMDctMTEgIEZpbGlwIFBpemxvICA8ZnBpemxvQGFwcGxlLmNvbT4KKworICAgICAgICBE
Rkcgc3BlY3VsYXRpdmUgSklUIGRvZXMgbm90IGd1YXJkIGl0c2VsZiBhZ2FpbnN0IGZsb2F0aW5n
IHBvaW50IHNwZWN1bGF0aW9uCisgICAgICAgIGZhaWx1cmVzIG9uIG5vbi1mbG9hdGluZy1wb2lu
dCBjb25zdGFudHMuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD02NDMzMAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorICAgICAg
ICAKKyAgICAgICAgTWFkZSBmaWxsU3BlY3VsYXRlRG91YmxlIGltbWVkaWF0ZSBpbnZva2UgdGVy
bWluYXRlU3BlY3VsYXRpdmVFeGVjdXRpb24oKSBhcworICAgICAgICBzb29uIGFzIGl0IG5vdGlj
ZXMgdGhhdCBpdCdzIHNwZWN1bGF0aW5nIG9uIHNvbWV0aGluZyB0aGF0IGlzIGEgbm9uLW51bWVy
aWMKKyAgICAgICAgSlNDb25zdGFudC4KKworICAgICAgICAqIGRmZy9ERkdTcGVjdWxhdGl2ZUpJ
VC5jcHA6CisgICAgICAgIChKU0M6OkRGRzo6U3BlY3VsYXRpdmVKSVQ6OmZpbGxTcGVjdWxhdGVE
b3VibGUpOgorCiAyMDExLTA3LTExICBGaWxpcCBQaXpsbyAgPGZwaXpsb0BhcHBsZS5jb20+CiAK
ICAgICAgICAgREZHIFNwZWN1bGF0aXZlIEpJVCBkb2VzIG5vdCBhbHdheXMgaW5zZXJ0IHNwZWN1
bGF0aW9uIGNoZWNrcyB3aGVuIHNwZWN1bGF0aW5nCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENv
cmUvZGZnL0RGR1NwZWN1bGF0aXZlSklULmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNj
cmlwdENvcmUvZGZnL0RGR1NwZWN1bGF0aXZlSklULmNwcAkocmV2aXNpb24gOTA3OTUpCisrKyBT
b3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR1NwZWN1bGF0aXZlSklULmNwcAkod29ya2luZyBj
b3B5KQpAQCAtMjA2LDEyICsyMDYsOCBAQCBGUFJSZWcgU3BlY3VsYXRpdmVKSVQ6OmZpbGxTcGVj
dWxhdGVEb3ViCiAgICAgICAgICAgICAgICAgaW5mby5maWxsRG91YmxlKGZwcik7CiAgICAgICAg
ICAgICAgICAgcmV0dXJuIGZwcjsKICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIEFTU0VSVChp
c0pTQ29uc3RhbnQobm9kZUluZGV4KSk7Ci0gICAgICAgICAgICBKU1ZhbHVlIGpzVmFsdWUgPSB2
YWx1ZU9mSlNDb25zdGFudChub2RlSW5kZXgpOwotICAgICAgICAgICAgbV9qaXQubW92ZShNYWNy
b0Fzc2VtYmxlcjo6SW1tUHRyKEpTVmFsdWU6OmVuY29kZShqc1ZhbHVlKSksIGdwcik7Ci0gICAg
ICAgICAgICBtX2dwcnMucmV0YWluKGdwciwgdmlydHVhbFJlZ2lzdGVyLCBTcGlsbE9yZGVyQ29u
c3RhbnQpOwotICAgICAgICAgICAgaW5mby5maWxsSlNWYWx1ZShncHIsIERhdGFGb3JtYXRKUyk7
Ci0gICAgICAgICAgICB1bmxvY2soZ3ByKTsKKyAgICAgICAgICAgIHRlcm1pbmF0ZVNwZWN1bGF0
aXZlRXhlY3V0aW9uKCk7CisgICAgICAgICAgICByZXR1cm4gZnByQWxsb2NhdGUoKTsKICAgICAg
ICAgfSBlbHNlIHsKICAgICAgICAgICAgIERhdGFGb3JtYXQgc3BpbGxGb3JtYXQgPSBpbmZvLnNw
aWxsRm9ybWF0KCk7CiAgICAgICAgICAgICBBU1NFUlQoc3BpbGxGb3JtYXQgJiBEYXRhRm9ybWF0
SlMpOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>