<?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>117049</bug_id>
          
          <creation_ts>2013-05-30 14:56:55 -0700</creation_ts>
          <short_desc>[sh4] Optimize NaN checks in LLINT for floating point comparisons</short_desc>
          <delta_ts>2013-05-30 16:21:10 -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="Julien Brianceau">jbriance</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>oliver</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>895687</commentid>
    <comment_count>0</comment_count>
    <who name="Julien Brianceau">jbriance</who>
    <bug_when>2013-05-30 14:56:55 -0700</bug_when>
    <thetext>Use the fcmp/eq opcode in sh4 LLINT to test if a double is NaN.

This is more efficient, doesn&apos;t require two tmp registers and requires less code than current implementation (which converts double to float, then checks &apos;E = Emax + 1&apos; and &apos;f != 0&apos;).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>895689</commentid>
    <comment_count>1</comment_count>
      <attachid>203384</attachid>
    <who name="Julien Brianceau">jbriance</who>
    <bug_when>2013-05-30 15:16:27 -0700</bug_when>
    <thetext>Created attachment 203384
Optimize NaN checks in sh4 LLINT for floating point comparisons</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>895720</commentid>
    <comment_count>2</comment_count>
      <attachid>203384</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-05-30 16:21:08 -0700</bug_when>
    <thetext>Comment on attachment 203384
Optimize NaN checks in sh4 LLINT for floating point comparisons

Clearing flags on attachment: 203384

Committed r150992: &lt;http://trac.webkit.org/changeset/150992&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>895721</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-05-30 16:21:10 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>203384</attachid>
            <date>2013-05-30 15:16:27 -0700</date>
            <delta_ts>2013-05-30 16:21:08 -0700</delta_ts>
            <desc>Optimize NaN checks in sh4 LLINT for floating point comparisons</desc>
            <filename>bug-117049.patch</filename>
            <type>text/plain</type>
            <size>4736</size>
            <attacher name="Julien Brianceau">jbriance</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMTUwOTg3KQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE3IEBA
CisyMDEzLTA1LTMwICBKdWxpZW4gQnJpYW5jZWF1ICA8amJyaWFuY2VhdUBuZHMuY29tPgorCisg
ICAgICAgIFtzaDRdIE9wdGltaXplIE5hTiBjaGVja3MgaW4gTExJTlQgZm9yIGZsb2F0aW5nIHBv
aW50IGNvbXBhcmlzb25zLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTE3MDQ5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgVXNlIHRoZSBmY21wL2VxIG9wY29kZSBpbiBzaDQgTExJTlQgdG8gdGVzdCBpZiBh
IGRvdWJsZSBpcyBOYU4uCisgICAgICAgIFRoaXMgaXMgbW9yZSBlZmZpY2llbnQsIGRvZXNuJ3Qg
cmVxdWlyZSB0d28gdG1wIHJlZ2lzdGVycyBhbmQgcmVxdWlyZXMKKyAgICAgICAgbGVzcyBjb2Rl
IHRoYW4gY3VycmVudCBpbXBsZW1lbnRhdGlvbiAod2hpY2ggY29udmVydHMgZG91YmxlIHRvIGZs
b2F0LAorICAgICAgICB0aGVuIGNoZWNrcyAnRSA9IEVtYXggKyAxJyBhbmQgJ2YgIT0gMCcpLgor
CisgICAgICAgICogb2ZmbGluZWFzbS9zaDQucmI6CisKIDIwMTMtMDUtMjkgIEplZmZyZXkgUGZh
dSAgPGpwZmF1QGFwcGxlLmNvbT4KIAogICAgICAgICBbTWFjXSBFbmFibGUgY2FjaGUgcGFydGl0
aW9uaW5nIGFuZCB0aGUgcHVibGljIHN1ZmZpeCBsaXN0IG9uIDEwLjgKSW5kZXg6IFNvdXJjZS9K
YXZhU2NyaXB0Q29yZS9vZmZsaW5lYXNtL3NoNC5yYgo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2
YVNjcmlwdENvcmUvb2ZmbGluZWFzbS9zaDQucmIJKHJldmlzaW9uIDE1MDk4NykKKysrIFNvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9vZmZsaW5lYXNtL3NoNC5yYgkod29ya2luZyBjb3B5KQpAQCAtMzIw
LDIxICszMjAsMTcgQEAgZGVmIHNoNExvd2VyRG91YmxlU3BlY2lhbHMobGlzdCkKICAgICAgICAg
ICAgIGNhc2Ugbm9kZS5vcGNvZGUKICAgICAgICAgICAgIHdoZW4gImJkbHR1biIsICJiZGd0dW4i
CiAgICAgICAgICAgICAgICAgIyBIYW5kbGUgc3BlY2lmaWMgZmxvYXRpbmcgcG9pbnQgdW5vcmRl
cmVkIG9wY29kZXMuCi0gICAgICAgICAgICAgICAgdG1wMSA9IFRtcC5uZXcoY29kZU9yaWdpbiwg
OmdwcikKLSAgICAgICAgICAgICAgICB0bXAyID0gVG1wLm5ldyhjb2RlT3JpZ2luLCA6Z3ByKQot
ICAgICAgICAgICAgICAgIG5ld0xpc3QgPDwgSW5zdHJ1Y3Rpb24ubmV3KGNvZGVPcmlnaW4sICJi
ZG5hbiIsIFtub2RlLm9wZXJhbmRzWzBdLCBub2RlLm9wZXJhbmRzWzJdLCB0bXAxLCB0bXAyXSkK
LSAgICAgICAgICAgICAgICBuZXdMaXN0IDw8IEluc3RydWN0aW9uLm5ldyhjb2RlT3JpZ2luLCAi
YmRuYW4iLCBbbm9kZS5vcGVyYW5kc1sxXSwgbm9kZS5vcGVyYW5kc1syXSwgdG1wMSwgdG1wMl0p
CisgICAgICAgICAgICAgICAgbmV3TGlzdCA8PCBJbnN0cnVjdGlvbi5uZXcoY29kZU9yaWdpbiwg
ImJkbmFuIiwgW25vZGUub3BlcmFuZHNbMF0sIG5vZGUub3BlcmFuZHNbMl1dKQorICAgICAgICAg
ICAgICAgIG5ld0xpc3QgPDwgSW5zdHJ1Y3Rpb24ubmV3KGNvZGVPcmlnaW4sICJiZG5hbiIsIFtu
b2RlLm9wZXJhbmRzWzFdLCBub2RlLm9wZXJhbmRzWzJdXSkKICAgICAgICAgICAgICAgICBuZXdM
aXN0IDw8IEluc3RydWN0aW9uLm5ldyhjb2RlT3JpZ2luLCBub2RlLm9wY29kZVswLi4tM10sIG5v
ZGUub3BlcmFuZHMpCiAgICAgICAgICAgICB3aGVuICJiZG5lcXVuIiwgImJkZ3RlcXVuIiwgImJk
bHRlcXVuIgogICAgICAgICAgICAgICAgIG5ld0xpc3QgPDwgSW5zdHJ1Y3Rpb24ubmV3KGNvZGVP
cmlnaW4sIG5vZGUub3Bjb2RlWzAuLi0zXSwgbm9kZS5vcGVyYW5kcykKICAgICAgICAgICAgIHdo
ZW4gImJkbmVxIiwgImJkZ3RlcSIsICJiZGx0ZXEiCiAgICAgICAgICAgICAgICAgIyBIYW5kbGUg
c3BlY2lmaWMgZmxvYXRpbmcgcG9pbnQgb3JkZXJlZCBvcGNvZGVzLgotICAgICAgICAgICAgICAg
IHRtcDEgPSBUbXAubmV3KGNvZGVPcmlnaW4sIDpncHIpCi0gICAgICAgICAgICAgICAgdG1wMiA9
IFRtcC5uZXcoY29kZU9yaWdpbiwgOmdwcikKICAgICAgICAgICAgICAgICBvdXRsYWJlbCA9IExv
Y2FsTGFiZWwudW5pcXVlKCJvdXRfI3tub2RlLm9wY29kZX0iKQogICAgICAgICAgICAgICAgIG91
dHJlZiA9IExvY2FsTGFiZWxSZWZlcmVuY2UubmV3KGNvZGVPcmlnaW4sIG91dGxhYmVsKQotICAg
ICAgICAgICAgICAgIG5ld0xpc3QgPDwgSW5zdHJ1Y3Rpb24ubmV3KGNvZGVPcmlnaW4sICJiZG5h
biIsIFtub2RlLm9wZXJhbmRzWzBdLCBvdXRyZWYsIHRtcDEsIHRtcDJdKQotICAgICAgICAgICAg
ICAgIG5ld0xpc3QgPDwgSW5zdHJ1Y3Rpb24ubmV3KGNvZGVPcmlnaW4sICJiZG5hbiIsIFtub2Rl
Lm9wZXJhbmRzWzFdLCBvdXRyZWYsIHRtcDEsIHRtcDJdKQorICAgICAgICAgICAgICAgIG5ld0xp
c3QgPDwgSW5zdHJ1Y3Rpb24ubmV3KGNvZGVPcmlnaW4sICJiZG5hbiIsIFtub2RlLm9wZXJhbmRz
WzBdLCBvdXRyZWZdKQorICAgICAgICAgICAgICAgIG5ld0xpc3QgPDwgSW5zdHJ1Y3Rpb24ubmV3
KGNvZGVPcmlnaW4sICJiZG5hbiIsIFtub2RlLm9wZXJhbmRzWzFdLCBvdXRyZWZdKQogICAgICAg
ICAgICAgICAgIG5ld0xpc3QgPDwgSW5zdHJ1Y3Rpb24ubmV3KGNvZGVPcmlnaW4sIG5vZGUub3Bj
b2RlLCBub2RlLm9wZXJhbmRzKQogICAgICAgICAgICAgICAgIG5ld0xpc3QgPDwgb3V0bGFiZWwK
ICAgICAgICAgICAgIGVsc2UKQEAgLTU0NCw0MCArNTQwLDkgQEAgZGVmIGVtaXRTSDRDb21wYXJl
U2V0KGNtcE9wY29kZSwgbmVnLCBvcAogZW5kCiAKIGRlZiBlbWl0U0g0QnJhbmNoSWZOYU4ob3Bl
cmFuZHMpCi0gICAgcmFpc2UgIkludmFsaWQgb3BlcmFuZHMgbnVtYmVyICgje29wZXJhbmRzLnNp
emV9KSIgdW5sZXNzIG9wZXJhbmRzLnNpemUgPT0gNAotICAgIGRibG9wID0gb3BlcmFuZHNbMF0K
LSAgICBsYWJlbG9wID0gb3BlcmFuZHNbMV0KLSAgICBzY3JtYXNrID0gb3BlcmFuZHNbMl0KLSAg
ICBzY3JpbnQgPSBvcGVyYW5kc1szXQotCi0gICAgbm90TmFObGFiZWwgPSBMb2NhbExhYmVsLnVu
aXF1ZSgibm90bmFuIikKLSAgICBub3ROYU5yZWYgPSBMb2NhbExhYmVsUmVmZXJlbmNlLm5ldyhj
b2RlT3JpZ2luLCBub3ROYU5sYWJlbCkKLSAgICBjb25zdGxhYmVsMSA9IExvY2FsTGFiZWwudW5p
cXVlKCJub3RuYW5Db25zdDEiKQotICAgIGNvbnN0bGFiZWwyID0gTG9jYWxMYWJlbC51bmlxdWUo
Im5vdG5hbkNvbnN0MiIpCi0KLSAgICAjIElmIHdlIGRvbid0IGhhdmUgIkUgPSBFbWF4ICsgMSIs
IGl0J3Mgbm90IGEgTmFOLgotICAgICRhc20ucHV0cyAiZmNudmRzICN7ZGJsb3Auc2g0T3BlcmFu
ZH0sIGZwdWwiCi0gICAgJGFzbS5wdXRzICJzdHMgZnB1bCwgI3tzY3JpbnQuc2g0T3BlcmFuZH0i
Ci0gICAgJGFzbS5wdXRzICJtb3YubCAje0xvY2FsTGFiZWxSZWZlcmVuY2UubmV3KGNvZGVPcmln
aW4sIGNvbnN0bGFiZWwxKS5hc21MYWJlbH0sICN7c2NybWFzay5zaDRPcGVyYW5kfSIKLSAgICAk
YXNtLnB1dHMgImFuZCAje3NoNE9wZXJhbmRzKFtzY3JtYXNrLCBzY3JpbnRdKX0iCi0gICAgJGFz
bS5wdXRzICJjbXAvZXEgI3tzaDRPcGVyYW5kcyhbc2NybWFzaywgc2NyaW50XSl9IgotICAgICRh
c20ucHV0cyAiYmYgI3tub3ROYU5yZWYuYXNtTGFiZWx9IgotCi0gICAgIyBJZiB3ZSBoYXZlICJF
ID0gRW1heCArIDEiIGFuZCAiZiAhPSAwIiwgdGhlbiBpdCdzIGEgTmFOLgotICAgICRhc20ucHV0
cyAic3RzIGZwdWwsICN7c2NyaW50LnNoNE9wZXJhbmR9IgotICAgICRhc20ucHV0cyAibW92Lmwg
I3tMb2NhbExhYmVsUmVmZXJlbmNlLm5ldyhjb2RlT3JpZ2luLCBjb25zdGxhYmVsMikuYXNtTGFi
ZWx9LCAje3Njcm1hc2suc2g0T3BlcmFuZH0iCi0gICAgJGFzbS5wdXRzICJ0c3QgI3tzaDRPcGVy
YW5kcyhbc2NybWFzaywgc2NyaW50XSl9IgotICAgICRhc20ucHV0cyAiYnQgI3tub3ROYU5yZWYu
YXNtTGFiZWx9IgotICAgICRhc20ucHV0cyAiYnJhICN7bGFiZWxvcC5hc21MYWJlbH0iCi0gICAg
JGFzbS5wdXRzICJub3AiCi0KLSAgICAkYXNtLnB1dHMgIi5iYWxpZ24gNCIKLSAgICBjb25zdGxh
YmVsMS5sb3dlcigiU0g0IikKLSAgICAkYXNtLnB1dHMgIi5sb25nIDB4N2Y4MDAwMDAiCi0gICAg
Y29uc3RsYWJlbDIubG93ZXIoIlNINCIpCi0gICAgJGFzbS5wdXRzICIubG9uZyAweDAwM2ZmZmZm
IgotCi0gICAgbm90TmFObGFiZWwubG93ZXIoIlNINCIpCisgICAgcmFpc2UgIkludmFsaWQgb3Bl
cmFuZHMgbnVtYmVyICgje29wZXJhbmRzLnNpemV9KSIgdW5sZXNzIG9wZXJhbmRzLnNpemUgPT0g
MgorICAgICRhc20ucHV0cyAiZmNtcC9lcSAje3NoNE9wZXJhbmRzKFtvcGVyYW5kc1swXSwgb3Bl
cmFuZHNbMF1dKX0iCisgICAgJGFzbS5wdXRzICJiZiAje29wZXJhbmRzWzFdLmFzbUxhYmVsfSIK
IGVuZAogCiBkZWYgZW1pdFNINERvdWJsZUNvbmRCcmFuY2goY21wT3Bjb2RlLCBuZWcsIG9wZXJh
bmRzKQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>